存储过程:就像函数一样的
会保存在数据库中--》可编程性--》存储过程

创建存储过程: 保存在数据库表,可编程性,存储过程
create proc jiafa

--需要的参数
@a int,
@b int
as
--存储过程内容
declare @c int;
set @c =@a + @b; 
return @c;
go

相当于一个函数
public int 函数名 (变量1,变量2)
{
函数语句
return int c
}

存储之后可以直接调用,
执行存储过程
exec 存储名

有返回值时
declare @f int;
exec @f= jiafa 3,5;
print @f;

--例:在CAR表中查询对应种类的车辆数目
--存储过程
creat proc ChaXun
@n varchar(20)
as
declare @num int 
select @num=coount(*) from car where name like '%'+@n+'%'
go

--调用方法
declare @m int
exec @m=ChaXun '奥迪'
print @m

触发器:
是一个特殊的存储过程;
通过增删改查的动作来触发执行,没有参数,没有返回值;
存储位置在要执行的表的下拉列表中

不去触发不执行,满足条件之后执行,相当于HTML中的事件

create trigger 触发器名称

Insert_Student --命名规范 动作_要执行的表名 为了以后更容易的了解触发器要使用的情况

on Student --针对于那张表
for insert --针对于那个动作来触发

--onclick= "show()"
as
触发器要执行的代码

go

1、for的意思是在动作执行之后触发
2、instead of delete 的意思是删除之前的引发,可以理解为替代,写了这个之后写的代码就没有用了,就被触发器的代码覆盖了

删除存在外键的表的内容时,需要先删除外键连接的表的内容
create trigger Delete_info
on inf0
instead of delete
as
declare @c varchar(20)
select @c =Code from deleted

delete from work where infocode=@c
delete from family where infocode=@c
delete from info where code=@c

go

instead of的使用比for的频繁

面试过程中问的比较多,但实际工作是用的比较少

SQL Sever语言 存储过程及触发器的更多相关文章

  1. SQL Server数据库(SQL Sever语言 存储过程及触发器)

    存储过程:就像函数一样的会保存在数据库中-->可编程性-->存储过程 创建存储过程: 保存在数据库表,可编程性,存储过程create proc jiafa --需要的参数@a int,@b ...

  2. SQL Server数据库(SQL Sever语言 CRUD)

    使用SQL Sever语言进行数据库的操作 常用关键字identity 自增长primary key 主键unique 唯一键not null 非空references 外键(引用) 在使用查询操作数 ...

  3. 查看SQL SERVER 加密存储过程,函数,触发器,视图

    原文:查看SQL SERVER 加密存储过程,函数,触发器,视图 create  PROCEDURE sp_decrypt(@objectname varchar(50))ASbeginset noc ...

  4. sql Sever的存储过程转换为mysql的

    总体来说,sql sever和Mysql的存储过程的思路都是一样的,但是在语法和结构上还是有很大的区别的.1. 在mysql中写存储过程所有的dbo都要去掉.2. 每一个sql语句后面都需要加上:否则 ...

  5. Oracle PL/SQL异常、存储过程和触发器

    一.异常 1.处理异常 (1)除数不为0 declare b number; begin b:; exception when zero_divide then dbms_output.put_lin ...

  6. SQL Server数据库(SQL Sever语言 事务)

    事务:保障流程的完整执行保证程序某些程序在运行时同时成功同时失败,保证程序的安全性 begin tran --在流程开始的位置加 --此处写SQL语句 if @@error>0 --ERRORS ...

  7. SQL Server数据库(SQL Sever语言 函数以及SQL编程)

    1.数学函数:操作一个数据,返回一个结果 --去上限: ceiling ☆select ceiling(price) from car --去下限:floor ☆select floor(price) ...

  8. SQL Sever语言 事务

    事务:保障流程的完整执行保证程序某些程序在运行时同时成功同时失败,保证程序的安全性 begin tran --在流程开始的位置加 --此处写SQL语句 if @@error>0 --ERRORS ...

  9. 走向面试之数据库基础:三、SQL进阶之变量、事务、存储过程与触发器

    一.变量那点事儿 1.1 局部变量 (1)声明局部变量 DECLARE @变量名 数据类型 ) DECLARE @id int (2)为变量赋值 SET @变量名 =值 --set用于普通的赋值 SE ...

随机推荐

  1. 洛谷 2055 BZOJ 1433 [ZJOI2009]假期的宿舍

    [题解] 既然是一人对应一床,那么显然可以用二分图匹配来做.俩人认识的话,如果其中一个a是在校学生,另一个b不回家,b就可以向a的床连边(a,b当然也可以是同一个人). 然后如果最大匹配数大于等于需要 ...

  2. JRebel 7.1.5 插件下载 安装 激活 结合 IntelliJ IDEA--自动编译进行热部署---

    Intellij IDEA 安装和配置jrebel进行项目的热部署 https://www.cnblogs.com/a8457013/p/7866625.html Intellij IDEA 使用jr ...

  3. better-scroll & scroll

    scroll better-scroll https://github.com/ustbhuangyi/better-scroll/blob/master/README.md#getting-star ...

  4. [luoguP1586] 四方定理(DP 背包)

    传送门 相当于背包, f[i][j] 表示当前数为 i,能分解成 j 个数的平方的和的数量 那么就是统计背包装物品的数量 ——代码 #include <cmath> #include &l ...

  5. 一位ACMer过来人的心得

    http://blog.csdn.net/acm_cxlove/article/details/8079348

  6. Hihocoder 1333 (splay)

    Problem 平衡树 splay2 题目大意 维护一个序列,支持四种操作: 操作1:添加一个数,编号为x,权值为y. 操作2:删除编号在区间[x,y]内的数. 操作3:将编号在区间[x,y]内的数的 ...

  7. Nth Largest Value

    Problem Description For this problem, you will write a program that prints the Nth largest value in ...

  8. 【转】建立一个更高级别的查询 API:正确使用Django ORM 的方式

    这个就比较深入啦... http://www.oschina.net/translate/higher-level-query-api-django-orm 结论: 在视图和其他高级应用中使用源生的O ...

  9. 武大OJ 574. K-th smallest

    Description Give you a number S of length n,you can choose a position and remove the number on it.Af ...

  10. BZOJ(3) 1051: [HAOI2006]受欢迎的牛

    1051: [HAOI2006]受欢迎的牛 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 7365  Solved: 3937[Submit][Sta ...