IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 2021/09/21 Java数据库编程 第二章 MySQL初体验 -> 正文阅读

[大数据]2021/09/21 Java数据库编程 第二章 MySQL初体验

目录

1.MySQL简介

2.MySQL运行机制

3.命令执行MySQL

4.SQLyong–图形化的MySQL管理工具

5.结构化查询语言

6.MySQL数据类型

7.创建表

8.字段的约束以及属性

9.MyIAM与InnoDB区别:

10.帮助功能

本章总结


1.MySQL简介


MySQL的优势(适用于中小企业,最重要免费)
(1)运行速度快

(2)使用成本低

(3)可移植强

(4)使用用户广
(5)my.ini:记录MySQL配置信息,可修改配置内容,如端口号,字符集等

2.MySQL运行机制

?总的来说,接口连接到连接池有两种情况:

(1)验证不成功就会返回到原来
(2)验证成功(如有缓存也会回到上一级)如未找到缓存就会继续进行SQL接口,解析,查询,优化到存储(一个一个的数据库)查找相关内容返回

3.命令执行MySQL

语法:mysql-h服务主机地址(可省略不写)-u用户名-p密码
eg:mysql-uroot-proot 或mysql-uroot-p

3.2创建数据库
语法:create database 数据库名;
eg:create database test_123;(;)是结束语,不可缺少
如图:?

3.3查看MySQL版本信息及当前用户
?? ??? ?select version(),user();
?? ??? ??? ?版本 ? ?用户
3.4查看数据库列表
?? ??? ?show databases;

3.5查看表结构
?? ??? ??? ?describe 表名;
?? ??? ??? ?或desc 表名;?

3.6选择数据库

语法:use 数据库名

eg:use mybase;(必须填写存在的数据库,否则会报错)

?

?3.7删除数据库
语法:drop database 数据库名;
eg;drop database myschool;

4.SQLyong–图形化的MySQL管理工具

优点:免费 简洁高效 功能强大

5.结构化查询语言

(1)DML(数据操作语言):用来操作数据库中所包含数据 eg:insert,update delete
(2)DDL(数据定义语言):用于创建,删除数据库对对象操作 eg:create,drop,alter
(3)DQL(数据查询语言):用来对数据库中数据进行查询 eg:select
(4)DCL(数据控制语言):用来控制数据库组件的存取许可,存取权限 eg:grant,commit rollback

?

6.MySQL数据类型

6.1数值类型

类型说明存储需求
(1)TINYINT非常小的数据1字节
(2)SMALLINT较小的数据2字节
(3)MEDIUMINT中等大小的数据3字节
(4)INT标准整数4字节
(5)BIGINT较大整数8字节
(6)FLOAT单精度浮点数4字节
(7)DOUBLE?双精度8字节
(8)DECIMAL字符串形式浮点数?M+2字节
(9)USINGNED属性:标识为无符号数
(10)ZEROFLL属性:宽度(位数)不足以0填充

6.2字符串类型

类型说明长度
CHAR[(M)]

定长字符串

M为0~255的整数

M字节
VARCHAR[(M)]

可变字符串

M为0~65535

可变长度
TINYTEXT

微型文本串

0~255

0-2的8次-1字节
TEXT

文本串

0~65535

?0-2的16次-1字节??

6.2日期类型

类型格式取值范围
DATEYYYY-MM-DD1000-01-01~9999-12-31
DATETIMEYY-MM-DD hh:mm:ss1000-01-01 00:00:00~9999-12-31 23::59:59
TIMEhh:mm:ss-838:59:59~838:59:59
TIMESTAMPYYYYMMDDHHMMSS1970年某一刻~2038年某时刻,精度为1秒
YEARYYYY格式的年份1901-2155

注意:若某日期字段默认值为当前日期,一般设置TIMESTAMP

7.创建表

语法:
create table 表名(字段1,数据类型,[字段属性],[字段属性],[约束][索引][注释],…字段n 数据类型[字段属性][约束][索引]
[注释])[表类型][表字符集][注释];
eg:create table ‘student’(‘studentNO’ INT(4) PRIMARY KEY,‘name’ char(10)…);
注意:多字段使用逗号分隔
保留字用撇好括起来
单行注释:#… 多行注释:/*…*/

8.字段的约束以及属性

名称关键字说明
非空约束NOT NULL字段不允许为空
默认约束DEFAULT赋予某字段默认
唯一约束UNIQUE KEY(UK)设置字段的值是惟一的,允许为空,但只能有一个空值
主键约束PRIMARY KEY(PK)设置字段为表的主键,可唯一标识该记录
外键约束FOREGIN KEY(FK)建立两表关系,需要指定引用主表的哪一字段
自动增长AUTO_INCREMET自增字段,默认每条自增1,通常用于设置主键

(1)主键
eg:
CREATE TABLE student(‘studentNo’ INT(4) PRIMARY KEY,…);
(2)注释
eg:
CREATE TABLE test(‘id’ int(11) USIGNED COMMENT ‘编号’)CoMMENT=‘测试表’;
(3)设置字符集编码
eg:CREATE TABLE[IF NOT EXISTS]表名(#省略代码)CHARSET=字符集名;
(4)查看表是否存在
use myschool 或 show tables
(5)查看表的定义
describe 表名 或 desc表名 避免DOS窗口乱码,可执行SET NAMES gbk;
(6)删除
语法:drop table 表名 eg:drop table[IF EXISTS] school;
在删除表之前,先 使用IF EXISTS语句验证是否错误
(7)存储引擎类型
MyISAM,InnoDB,Memory,CSV等

9.MyIAM与InnoDB区别:

名称InnoDBMyISAM
事务处理支持?不支持
数据行锁定支持不支持
外键约束?支持不支持
全文索引不支持支持
表空间大小?较大约2倍 较小

适用场合
使用MyISAM:不需要事务,空间小,以查询访问为主
适用InnoDB:多删除,更新操作,安全性高,事务处理及并发控制

10.帮助功能

help 查询内容;

eg:help contents;

本章总结

  1. MySQL以其开源丶免费(社区版)丶体积小丶速度快丶易用性丶跨平台丶功能完善的特性成为企业中应用最广泛的关系型数据库管理系统。
  2. 命令行或数据库管理工具---Navicat可以实现连接和操作MySQL数据库,其中,使用命令行操作MySQL数据库是程序员的必备技能。
  3. 使用数据库管理工具可以创建数据表。但是实际开发过程中,为了批量快速地创建数据表,通常会使用SQL语句。
  4. MySQL支持多种存储引擎,最常用的为InnoDB,根据使用场景也可以在创建数据表时为其单独指定存储引擎。
  5. MySQL的HELP命令可以方便地提供系统帮助功能,解决开发中遇到的问题。

练习小作业:

  1. 使用命令行连接MySQL数据库
  2. 创建hospital数据库,并完成查看所有数据库丶选择和删除hospital数据库的操作。
  3. 在hospital数据库中,使用SQL语句创建department(科室表)丶checkitem(项目检查表)丶department_checkitem(科室与项目检查关系表)丶prescription(处方表)。
  4. 查找MySQL中INT数据类型的信息,并找到INT类型有符号数和无符号数的取值范围。

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2021-09-22 14:44:36  更:2021-09-22 14:45:31 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 23:00:42-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码