存储数据的仓库
常见数据库分类: 大型数据库 Oracele (多用户 甲骨文 开源 使用免费 服务收费)
中型数据库 sqlserver(win) postgresql(日企)
小型数据库 mysql (甲骨文 开源免费)
微型数据库 sqllilt
数据库的 库 表 列名 约束名(auto_increment, FOREIGN KEY PRIMARY key UNIQUE `DEFAULT`(默认) not null ) 聚合函数(max min avg COUNT)
sql语句分类:
数据定义语言DDL 对库和表(库表的结构)的操作(create ALTER DROP)
数据查询语言DQL 模糊 分页查 排序 条件 分组 。。。
数据操纵语言DML 对数据的的操作 增 删 改(insert INTO update DELETE)
数据控制功能DCL 对数据库的权限 GRANT,REVOKE,COMMIT,ROLLBACK 事务的特性 ACID
DDL语句:
create database 库名 /表名
use 库名
alter 库名 /表名
drop 库名/ 表名
ALTER TABLE 表名称 ADD 字段名 字段约束
ALTER TABLE 修改前表名称 RENAME 修改后表名称
//只复制表结构及约束,但不复制数据
CREATE TABLE 复制出的表 LIKE 原表
//复制表结构及数据,但不复制约束
CREATE TABLE 复制出的表 AS SELECT * FROM 原表
//禁用约束
ALTER TABLE 表名称 DISABLE KEYS
//启用约束
ALTER TABLE 表名称 ENABLE KEYS
//删除表字段
ALTER TABLE 表名称 DROP COLUMN 字段名
//删除主键
ALTER TABLE 表名称 DROP PRIMARY KEY
//删除索引
ALTER TABLE 表名称 DROP INDEX 索引的字段名
//删除外键约束
ALTER TABLE 表名称 DROP FOREIGN KEY 外键的字段名
DML语句:
insert into 表名【(字段名)】 values (字段值)
insert into 表名 (字段名) values (字段值1),(字段值2),(字段值3).。。。。
update 表名 set 字段名 = 新字段值 【条件】 如果增加条件语句对应的是修改一条语句 如果没有条件对应的是修改全部数据
delete 表名 【条件】 不加条件对应是表的中所有数据 如果加上条件删除的是单挑数据
DQL语句:
单表查
select 字段名1,字段名2 from 表名
ORDER BY DESC/ASC
GROUP BY 字段名
where 条件
like 字段名
HAVING 条件
limit 0,0
多表查
面试题:
INNER JOIN 内链接
LEFT JOIN RIGHT JOIN 外连接 {左外联 右外联}
FULL join 全连接
一共52条数据 每页显示10条 分了 5页
select * from student LIMIT 1,2 (1 代表的是偏移量 从第几条数据开始 2 代表的是每页展示多少数据)