– 不同的数据类型 可以使用不同的函数 常用函数
– 表连接(查询的字段 不在同一个表) 关联字段(中间表)
– 内连接 左连接 右连接 (主表数据全部显示) 自连接(给自己起别名) 交叉
– 地址
– 常见的sql语句 修改删除 where 查询
– 事务 表操作的最小执行单元
– 对表中的数据进行操作 操作 原子性 不能再分 要么都成功 要么都不成功
– 数据库引擎 engine= innodb
– 自动提交 默认开始
show variables
set autocommit=0;
– 执行sql语句 通过两个过程 1、写sql语句 2、提交
INSERT into t(name,score) VALUES(‘sss’,90)
commit;
select *from t;
begin
INSERT into t(name,score) VALUES(‘sss’,90)
rollback – 回滚
commit
end;
– 事务的特征 原子性 一致性
– tx_isolation 可以设置隔离级别 默认的隔离级别 repeatable-read
– 1、未提交读 两个客户端
– 一个客户端 还没提交 另一个客户端 读取 读到错误信息 脏读
– 2、读已提交 数据读取 不会读到错误信息 避免了脏读 不可重复读
– 3、默认的 可重复读
– 4、可串行化
set SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
set autocommit = 0
BEGIN
UPDATE t set name=“中文1” where id=2;
commit;
– 读未提交
– 读已提交
– 可重复读
– 串行化 不允许两个客户端同时对表同一条数据进行操作
set SESSION TRANSACTION ISOLATION LEVEL SERIALIZABLE
set autocommit=0;
begin;
UPDATE t set name=‘eee’ where id=3;
commit;
show VARIABLES;
– 数据库三范式
– 创建表的规范
– 1、原子性(一个字段的数据不能再进行拆分)
– 2、唯一标识 主键
– 3、外键 参照 少 把多个表 强关联在一起 耦合
– 函数 就是存储过程 Java中得方法 (定义 后调用) call
create PROCEDURE ta()
begin
select *from test;
end;
call ta();
CREATE PROCEDURE ttest()
begin
select *from t;
end;
call ttest();
CREATE PROCEDURE selecttable(in i int)
begin
select *from t where id=i;
end;