l DDL(Data Definition Language):数据定义语言,用来定义数据库对象:库、表、列等;
l DML(Data Manipulation Language):数据操作语言,用来定义数据库记录(数据);
l DCL(Data Control Language):数据控制语言,用来定义访问权限和安全级别;
l DQL(Data Query Language):数据查询语言,用来查询记录(数据)。
DQL就是数据查询语言,数据库执行DQL语句不会对数据进行改变,而是让数据库发送结果集给客户端。语法:
SELECT selection_list /*要查询的列名称*/ FROM table_list /*要查询的表名称*/ WHERE condition /*行条件*/ GROUP BY grouping_columns /*对结果分组*/ HAVING condition /*分组后的行条件*/ ORDER BY sorting_columns /*对结果分组*/ LIMIT offset_start, row_count /*结果限定*/
SQL语法要求
l SQL语句可以单行或多行书写,以分号结尾;
l 可以用空格和缩进来来增强语句的可读性;
l 关键字不区别大小写,建议使用大写;
(1)数据库操作DDL
show databases; #查看当前mysql数据库管理软件中有什么数据库
use test; #使用一个数据库
create database test; #创建一个数据库
show tables; #查看当前数据库中有什么表格
select * from 表名称; #查看某个表中的数据
set names gbk; # 设置告知服务器我客户端的字符编码
update 表名称 set 字段=字段+1000; #修改
select * from 表名称 where 字段>20000; # 条件查询
desc 表名称; # 查看表结构
rename table 旧表名 to 新表名; #修改表名称
alter table 旧表名 rename 新表名; #修改表名称
alter table 表名称 add 字段名 数据类型; # 修改表结构
alter table 表名称 add 字段名 数据类型 first; #添加到表的第一列
alter table 表名称 add 字段名 数据类型 after 另一个字段; # 添加到某个字段之后
alter table 表名称 modify 字段名 数据类型; # 修改,字段的数据类型和位置
alter table 表名称 modify 字段名 数据类型 first;
alter table 表名称 modify 字段名 数据类型 after 另一个字段;
alter table 表名称 change 旧字段名 新字段名 新数据类型; # 修改,列名称
alter table 表名称 drop 字段名; # 删除一列
drop table 表名称; # 删除整张表
(2)DML ,增删改查
CREATE TABLE stu ( sid CHAR(6), sname VARCHAR(50), age INT, gender VARCHAR(50) ); INSERT INTO stu VALUES('S_1001', 'liuYi', 35, 'male'); INSERT INTO stu VALUES('S_1002', 'chenEr', 15, 'female'); INSERT INTO stu VALUES('S_1003', 'zhangSan', 95, 'male'); INSERT INTO stu VALUES('S_1004', 'liSi', 65, 'female'); INSERT INTO stu VALUES('S_1005', 'wangWu', 55, 'male'); INSERT INTO stu VALUES('S_1006', 'zhaoLiu', 75, 'female'); INSERT INTO stu VALUES('S_1007', 'sunQi', 25, 'male'); INSERT INTO stu VALUES('S_1008', 'zhouBa', 45, 'female'); INSERT INTO stu VALUES('S_1009', 'wuJiu', 85, 'male'); INSERT INTO stu VALUES('S_1010', 'zhengShi', 5, 'female'); INSERT INTO stu VALUES('S_1011', 'xxx', NULL, NULL);