一直都想找个时间研究一下,今天花了一天时间去实践了一下,非常有用。可以说是数据库里面的精华吧。还好我今天去弄了几下,虽说都是些简单的语句,但是最起码知道以后在项目该怎么去做了。 闲话少说。进入正题。 1.创建SQL存储过程: Declare @XXX声明变量 2.执行存储过程 其实可以把存储过程看成一个C语言的函数。函数名是存储过程名,形参是也是里面的参数,里面还有局部变量,同时也可设定值。也可以返回值,用return语句。里面可以用到if else,while语句。但是C里面的函数功能会更大,不能等同,只能做比较。写存储过程也有点像写个函数一样。 同时在JAVA语言中也可以调用存储过程,类似C里调用函数。设定形参值。 3.JDBC中调用存储过程 存储过程可以提高访问数据库的性能和速度。 触发器就是可以进行关联操作,而单单SQL语句不能做到这一点。 CREATE TRIGGER StudentDelete ON [dbo].[Student] 语句形式跟存储过程是一致的,因为触发器本身就是一种存储过程.
CREATE PROCEDURE stu_proc1//指定过程名
@Sno varchar(50) =7000803068,//定义参数以及默认值
AS//执行SQL语句
select * from Student
where Sno=@Sno
GO
set @XXX=XXX设定变量值
同时里面也有if else while等语句不过得加上begin end
Execute stu_proc1 @Sno=XXX @Sname=XXXX
CallableStatement对象
String sql=”{call stu_proc1(?,?)}”;
String firstVal=””;
String secondVal=””;
Class.forName();
Connection conn=DriverManager.getConnection(“”,””,””);
CallableStatement stmt=conn.prepareCall(sql);
stmt.setString(1,firstVal);
stmt.setString(2,secondVal);
ResultSet rs=stmt.executeQuery();
触发器是一种特殊的存储过程,主要用于update,insert,delete这三种语句,主要是处理表与表之间的关联,也就是约束性吧。同时有二个表inserted(插入表),deleted(删除表)而update可以看成先删除,然后插入.比如,当要删除一个学生时,同时该学生的选课记录也是要删除的,这时可以在学生表进建个触发器就可以实现这种功能。
FOR DELETE
AS
delete from SC where SC.Sno=(select Sno from deleted)
sql server 存储过程及触发器_数据库技巧
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » sql server 存储过程及触发器_数据库技巧
相关推荐
-      sql语句中的判断功能的使用方法
-      sql语句中的判断功能的使用方法
-      SQL语言中去掉小数点有效数字后面的所有0
-      ASP连接各种数据库的代码
-      在sql语句中实现md5功能
-      给access数据库减肥
-      asp连接access数据库代码(2)
-      更改 SQL Server 登录模式