制约/约束
NOT NULL
- 指示某列不能存储 NULL 值。UNIQUE
- 保证某列的每行必须有唯一的值。PRIMARY KEY
-NOT NULL
和UNIQUE
的结合。确保某列(或两个列多个列的结合)有唯一标识,有助于更容易更快速地找到表中的一个特定的记录。FOREIGN KEY
- 保证一个表中的数据匹配另一个表中的值的参照完整性。CHECK
- 保证列中的值符合指定的条件。DEFAULT
- 规定没有给列赋值时的默认值。
事务/トランザクション/Transaction
- 宣告事务的开始
Begin
- 进行SQL
update DVD set DVD_state = 0, count=count+1,last_update_time = current_timestamp where id = 2 and DVD_state = 1 and delete_flag = 0;
insert into DVD_Record(ID,lend_date) values (2,current_date);
- 手动提交SQL至数据库
commit;
存储过程(类似于封装方法)(内部包含事务的感觉)(可以有返回值)
-
ストアドプロシージャ[ stored procedure ]
在数据库存储了一个存储过程,每次用的时候,调用这个过程即可; -
创建 并 赋值
create procedure SP_LEND_DVD(IN dvdId(不可以与列重名) int)
Begin
update DVD set DVD_state = 0, count=count+1,last_update_time = current_timestamp where id = dvdId and DVD_state = 1 and delete_flag = 0;
insert into DVD_Record(ID,lend_date) values (dvdId,current_date);
end;
调用存储过程。关键字 call
call SP_LEND_DVD(1);