一、SQL通用语法
1.SQL语句可以单行或者多行书写,以分号结尾。
2.SQL语句可以使用空格/缩进来增强语句的可读性。
3.MySQL数据库的SQL语句不区分大小写,关键字建议使用大写。
4.注释:
(1)单行注释:--注释内容 或 # 注释内容(MySQL特有)
(2)多行注释:/*注释内容*/
二、SQL分类
三、DDL
(1)数据库操作
1.查询:show databases;? select database();
2.创建:create database [if not exists] 数据库名 [default charset utf8mb4];
3.删除:drop database [if exists] 数据库名;
4.使用:use 数据库名;
(2)表操作-查询-创建-数据类型-修改
注意:[...]为可选参数,最后一个字段后面没有逗号。
数值类型
字符串类型
char(10):如果只用一个字符,其余九个字符将会用空格。---->性能好
varchar(10):用几个字符就占多少空间,<=10个字符。----->性能较差
gender char(1)? ?username varchar(50)
日期类型
课堂案例
create table emp(
????????id int comment '编号',
? ? ? ? workno varchar(10) comment '工号',
? ? ? ? name varchar(10) comment '姓名',
? ? ? ? gender char(1) comment '性别',
? ? ? ? age tinyint unsigned comment '年龄',
? ? ? ? idcard char(18) comment '身份证号',
? ? ? ? entrydate date comment '入职时间'
)comment '员工表';
添加字段:alter table 表名?add 字段名 类型(长度)[comment 注释词]?;
修改数据类型:alter table 表名 modify 字段名 新数据类型(长度);
修改字段名和字段类型:alter table 表名 change 旧字段名 新字段名 类型(长度)[comment 注释][约束];
alter table emp change nickname username varchar(30) comment '用户名';
删除字段
alter table emp drop username;
desc emp;
修改表名
alter table emp rename to employee;
删除表:drop table [if exists] 表名;
删除表,并重新创建该表:
注意:在删除表时,表中的全部数据也会被删除。
四、DDL总结
1.DDL-数据库操作
(1)show databases;
(2)create datebase 数据库名;
(3)use 数据库名;
(4)select datebase();
(5)drop database 数据库名;
2.DDL-表操作
(1)show tables;
(2)create table 表名(字段 字段类型,字段 字段类型);
(3)desc 表名;
(4)show create table 表名;
(5)alter table 表名 add/modify/change/rename to ....;
(6)drop table 表名;