1、事务 transaction
数据库操作的 最小单元
2、Transaction 转账
a账户转账b账户100
update account set money=money-100 where id='a'
update account set money=money+100 where id='b'
3、特征 A 原子性 事务 中 的 多个操作作为整体不可分割
C 一致性 要么全成功 要么全失败
I 隔离性 事务和 事务 之间相互 独立 互不影响
D 持久性 事务提交后 则 数据永久生效
4、如何使用事务 transaction
start transaction
commit 提交
rollback 回滚(撤销)
commit; – 提交 数据
ROLLBACK;-- 撤销
5、约束: constraint 限定
唯一( unique):限定的列的值不能重复,可以有多个;
主键(primary key):特殊的唯一约束、不重复、而且每个表只能有一个;
非空(not null):列的值不能为null ;
外键( foreign key):从表中列的值,只能是主表的主键列的值或者是null ;
例:ALTER TABLE pet ADD CONSTRAINT emp FOREIGN KEY (ren) REFERENCES emp (empno
);
6、索引:index (作用:加快查询速度)
ALTER TABLE pet
ADD INDEX index_pname
(pname
) ;
7、视图( view )虚拟表 (虚表)
create view vs
as select sno,sname,ssex,classes from s_student;
select * from vs;
select * from s_student;
a) 多表的视图增删改不好用;
b) 单表的视图增删改查都可以;
例:
create view tc
as select t.*,c.cno,c.cname from s_teacher t,s_course c where t.tno=c.tno
SELECT * from tc;
insert into tc(tno,tname,tsex,cno,cname)
values(111,'XXX','男','999','xxxx');