日拱一卒无有尽,功不唐捐终入海

MySql触发器存储过程索引临时表操作示例

DataBase Sam 1046℃ 0评论

触发器

触发器:执行一个可以改变表数据的操作(增加删除和修改),会自动触发另外一系列(类似于存储过程中的模块)的操作。

语法:

—为grade表创建名称为tr_grade_insert的触发器,在执行insert操作之后触发

–触发器不是被调用的,而是被某一个操作触 发的,意味着执行某一个操作就会自动触发 触发器

—替换触 发器:本来需要执行某一个操作,结果不做了,使用触 发器中的代码语句块进行替代

—触 发器的两个临时表:
–inserted: 操作之后的新表:所有新表与原始的物理表没有关系,只与当前操作的数据有关
–deleted:操作之前的旧表:所有新表与原始的物理表没有关系,只与当前操作的数据有关

–测试:

–测试

存储过程

存储过程就相当于c#中的方法

参数,返回值,参数默认值,参数:值的方式调用

在调用的时候有三个对应:类型对应,数量对应,顺序对应

创建语法:

调用语法:

exec 存储过程名称 实参,实参,实参 …

–获取所有学员信息

–output标记说明它是一个输出参数。output意味着你向服务器请求这个参数的值,那么在执行的时候,服务器发现这个参数标记了output,就会将这个参数的值返回输出

–调用存储过程,获取指定性别的学员人数及总人数

—获取指定班级的人数

–return 只能返回int整数值
–return ‘总人数是’+cast(@cnt as varchar(2))
return @cnt
Go
–调用存储过程,接收存储过程的返回值

分页存储过程

索引

–如果是先创建主键再创建聚集索引就不可以,因为主键默认就是聚集索引
–但是如果先创建聚集索引,那么还可以再创建主键,因为主键不一定需要是聚集的

临时表

–创建局部临时表

—局部临时表只有在当前创建它的会话中使用,离开这个会话临时表就失效.如果关闭创建它的会话,那么临时表就会消失

–创建全局临时表:只要不关闭当前会话,全局临时表都可以使用,但是关闭当前会话,全局临时表也会消失

 

转载请注明:PHP笔记 » MySql触发器存储过程索引临时表操作示例

喜欢 (0)
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)