MySQL-SQL-DDL语句、表结构创建语句语法、表约束、表数据类型
一.SQL
SQL:一门操作关系型数据库的编程语言,定义操作所有关系型数据库的统一标准
二. DDL-数据库
1. 查询所有数据库
命令:show databases;
2. 查询当前数据库
命令:select database();
3. 创建数据库
命令:create database [if not exists] 数据库名 [default charset utf8mb4];
可选项: if not exists-如果数据库不存在则创建;
default charset utf8mb4-指定数据库字符集(不写默认也是他)
同一个数据库中数据库名不能重复;不使用if not exists重复创建则报错;
4.使用/切换数据库
命令:use 数据库名;
5.删除数据库
命令:drop database [if exists] 数据库名;
不使用if exists删除不存在的数据库则会报错;
可选项:if exists-如果存在则删除
注意: 上述语法中的database,也可以替换成schema。如create schema db01;
MySQL8版本中,默认字符集为utf8mb4。
三. MySQL客户端工具-图形化工具-DataGrip 安装与使用
参照博主的 MySQL客户端工具-图形化工具-DataGrip 安装与使用 来安装
四. DDL-表结构创建
1. 语法
create table 表名(字段1 字段类型 [约束] [comment 字段1注释],.....字段2 字段类型 [约束] [comment 字段1注释])[comment 表注释];
2. 约束
(1) 约束是作用于表中字段上的规则,用于限制存储在表中的数据;目的是保证数据库中数据的正确性、有效性、完整性。
一个字段上可以添加多个约束,约束之间用空格隔开
3. auto_ increment 自增
4. 数据类型
(1) MySQL中数据类型有很多,主要分为三类:数值类型,字符串类型,日期时间类型。
数值类型的选取原则:在满足业务需求的前提下,尽可能选择占用磁盘空间小的数据类型。
-- 创建员工表
-- 基础字段:id 主键;create_time 创建时间;update_time 更新时间
create table emp(id int unsigned primary key auto_increment comment 'id主键',username varchar(50) not null unique comment '用户名',password varchar(32) default '123456' comment '密码,默认123456',name varchar(50) not null comment '姓名',gender tinyint unsigned not null comment '性别,1男;2女',phone char(11) not null unique comment '手机号',job tinyint unsigned comment '职务,1语文;2数学;3英语;4思想品德',salary int unsigned comment '工资',entry_date date comment '入职日期',image varchar(300) comment '照片',create_time datetime comment '创建时间',update_time datetime comment '更新时间'
)comment '员工表';