ajax请求是不能使用请求转发和重定向的
事物:为了完成某一个特定的功能,而对数据库的一系列操作,这一系列操作也就是一个事务。
什么是事物:
1.一个最小的不可再分的工作单元。
2.通常一个事物对应一个完整的业务(如:银行转账业务)。
3.一个完整的业务需要批量的DML(insert、update、delete)语句共同完成。
4.事物只和DML语句有关,或者说只有DML语句才有事物。
5.以上所描述的批量DML语句共有多少DML语句,这个和业务逻辑有关系,业务逻辑不同DML语句个数不同。
事物的四个特性ACID:
1.原子性(Atomicity)
事物是最小单位,不可再分。
2.一致性(Consistency)
事物要求所有的DML语句操作时,必须保证同时成功或同时失败。事物执行前后,业务状态和其他业务状态保持一致。
3.隔离性(Isolation)
一个事物不会影响其他事物的运行。
4.持久性(Durability)
在事物完成之后,该事物对数据库所作的更改将持久的保存在数据库中,并不会被回滚。
事物的隔离级别
事物的四个特性ACID之一:隔离性(isolation)
隔离性的四个隔离级别:
1.read uncommitted 读未提交 什么也不能避免
2.read committed 读已提交 避免脏读
3.repeatable read 可重复读 避免脏读取、不可重复读取
4.serializable 串行化 什么都可以避免,但是资源消耗太大
读未提交
读已提交
可重复读
串行化
if语句:
if 条件表达式 then sql语句 end if
case语句
语法:
when 表达式 then sql语句
循环语句:
while语句
语法:
[begin_label:] while 条件表达式 do
sql语句
end while [end_lable]
WHILE语句可以被标注。
除非begin_label也存在,end_label才能被用,
如果两者都存在,它们必须是一样的。
repeat语句:
语法:
[begin_label:] repeat
sql语句
until 条件表达式 end repeat [end_lable]
loop语句
语法:
begin_label: loop
sql语句
end loop end_label
LOOP允许某特定语句或语句集的重复执行,
实现一个简单的循环构造。
在循环内的语句一直重复至循环被退出,
退出通常伴随着一个LEAVE 语句。
游标:
游标也一种数据类型,保存的是一个结果集的引用。
申明游标:declare 游标名 cursor for 结果集
打开游标 open 游标名
抓取数据:fetch 游标名 into 变量名…
触发器:
与表事件相关的特殊的存储过程。
优点:
自动、安全性、审计
old(旧值)关键字和new关键字(新值)
还原点:将数据还原到某个时间点