存储过程、游标及其它剖析.pptVIP

  • 3
  • 0
  • 约7.06千字
  • 约 39页
  • 2017-07-01 发布于湖北
  • 举报
存储过程、游标及其它剖析

存储过程与游标 什么是存储过程? 存储过程是SQL Server编译到单一执行计划的T-SQL的集合。第一次执行存储过程时,该过程被存入内存中的高速过程缓冲区,下一次再调用时就不必重新编译,一个存储过程可以向多个进程提供服务,对每一个服务提供了一个单一的访问点,可以更好地保证规则的与数据完整性。和其它编程语言中的过程一样,它也可以接受参数,可以返回值以表示执行的成功与失败。 使用存储过程的好处 系统存储过程的属性—权限管理 查看系统存储过程原代码 系统存储过程存在系统表Master--syscomments 在查询分析器中可以看到 Exec sp_helptext XXXXX 什么是扩展存储过程 --列出服务器上固定驱动器,以及每个驱动器的可用空间 execute master..xp_fixeddrives --列出当前错误日志的具体内容 EXEC [master].[dbo].[xp_readerrorlog] 存储过程的创建语法 CREATE PROC [ EDURE ] procedure_name [ ; number ] ????[ { @parameter data_type } ????????[ VARYING ] [ = default ] [ OUTPUT ] ????] [ ,...n ] [ WITH ????{ RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ] 准备工作: 1)为了每一次都可以执行,在创建之前先写上下面的一段SQL语句,检测是不是已经有了相同名称的存储过程,如果有就删除。Proc_name是要建立的存储过程名,sysobjects是一个系统表,存了所有的系统对象的信息。 if exists (select name from sysobjects where name=proc_name and type=P) drop procedure proc_name go 2)if else 语法 IF Boolean_expression {sql_statement | statement_block} [ELSE {sql_statement | statement_block}] 在每一个段中都要用一对begin end进行语句块的标定。 不使用参数的存储过程 go if exists (select name from sysobjects where name=dbo.up_bian and type=p) drop procedure dbo.up_bian Go create procedure dbo.up_bian as declare @id int set @id=1 while (@id6) begin select * from Employees where EmployeeID=str(@id) set @id=@id+1 End Go dbo.up_bian 使用参数的存储过程(注意缺省值) /* 这里的参数是一个输入存储过程的参数,我们为它设定了一个缺省值,以便在用户忘记了输入时 也可以给出一个答案,不返回出错的信息 */ use northwind go if exists (select name from sysobjects where name=dbo.up_shipper and type=p) drop procedure dbo.up_shipper Go create procedure dbo.up_shipper @ShipperName char(40)=United Package‘ With ENCRYPTION as select requireddate,shippeddate,panyname from orders,shippers where shippeddaterequireddate and orders.shipvia=shippers.shipperid and panyname=@shippername 使用加密后,不能再看原代码 事件探查器也看不到代码 怎样使用参数来调用一个存储过程 CREATE PROCEDURE CustOrdersOrders @CustomerID nchar(5) AS SELECT OrderID, OrderDate, RequiredDate, ShippedDate FROM Orders WHERE

文档评论(0)

1亿VIP精品文档

相关文档