查询所有数据库:show databases;
创建数据库:create database 库名;
删除数据库:drop database 库名;
选择(进入)数据库:use 库名;
查看所有表:show tables;
创建表:create table 表名;
查看表结构:desc 表名;
删除表:drop table 表名;
添加字段:alter table 表名 add column 添加的字段名 varchar(20);
删除字段:alter table 表名 drop column 字段名;
修改字段类型:alter table 表名 modify column 要修改的字段名 类型;
修改字段名称:alter table 表名 change column 字段名 要修改的名 类型;
修改表名称:alter table 表名 rename to 名称;
增加数据:insert into 表名 (id,name,age)
values(1,"张三",20)
);
修改数据:一、update 表名 set age=21; 注:改所有数据:
二、update 表名 set age=21 where id=1; 修改ID为1的数据
三、update 表名 set age=21,name="张四" where id=2; 修改多组数据
删除数据:delete from 表名; 删除所有数据
delete from 表名 where id=2; 只删除id为2的数据
查询
查询所有数据:select *from 表名;
指定字段: select 字段1,字段2.... from表;
指定别名:select字段1 as别名from表;
合并列:select (字段1+字段2) from表;
去重:select distinct字段from表;
逻辑条件 :and(与) or(或)
select * from 表where条件1 and/or条件2
比较条件:> < >= <= = <> between and(在。。。之间)
select * from 表where servlet>=90;
判空条件:
判断null:is null / is not null
判断空字符串: ='' / <>''
模糊条件:like
%: 替换任意个字符
_: 替换一个字符
分页查询:limit起始行,查询行数
起始行从0开始
排序:order by字段asc/desc
asc: 正序,顺序
desc:反序,倒序
分组查询:group by字段
分组后筛选:having条件
约束
默认值:
CREATE TABLE 表名(
id INT,
NAME VARCHAR(20),
address VARCHAR(20) DEFAULT '广州天河' --默认值
)
非空:(不能为空)
CREATE TABLE 表名(
id INT,
NAME VARCHAR(20),
gender VARCHAR(2) NOT NULL -- 非空
)
唯一:(id 唯一)
CREATE TABLE 表名(
id INT UNIQUE, -- 唯一
NAME VARCHAR(20)
)
主键(非空+唯一)
CREATE TABLE 表名(
id INT PRIMARY KEY, -- 主键
NAME VARCHAR(20)
)
自增长
CREATE TABLE student(
id INT(4) ZEROFILL PRIMARY KEY AUTO_INCREMENT, -- 自增长,从0开始ZEROFILL零填充
NAME VARCHAR(20)
)
外键
-- 部门表(主表)
CREATE TABLE 表名(
id INT PRIMARY KEY,
deptName VARCHAR(20)
)
-- 修改员工表(副表/从表)
CREATE TABLE 表名(
id INT PRIMARY KEY,
empName VARCHAR(20),
deptId INT, -- 把部门名称改为部门ID
-- 声明一个外键约束
CONSTRAINT emlyee_dept_fk FOREIGN KEY(deptId) REFERENCES dept(id)
-- 外键名称外键参考表(参考字段)
)