SQL Server数据库技术(69)[MSSQL防范]
本文“SQL Server数据库技术(69)[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
12.3.1 查看存储历程
存储历程被成立今后,它的名字存储在系统表sysobjects 中;它的源代码存放在系统表syscomments 中.可以通过MS sql server 供应的系统存储历程来查看关于用户成立的存储历程信息.
1 通过Enterprise Manager 管理工具一样可以查看存储历程的源代码
其操作以下:
(1) 启动Enterprise Manager, 登录到要利用的服务器.
(2) 挑选要成立存储历程的数据库,在左窗格中单击Stored Procedure 文件夹,此时在右窗格中显示该数据库的全部存储历程.
(3) 在右窗格中,右击要查看源代码的存储历程,在弹出的菜单中挑选Properties选项,此时便可看到存储历程的源代码.如图12-4 所示:
2 利用sp_helptext 存储历程查看存储历程的源代码
其语法格局以下:
sp_helptext 存储历程名称
比方要查看数据库pubs 能否是存储历程reptq1 的源代码,则履行sp_helptext reptq1.
注意:假如在成立存储历程时利用了WITH ENCRYPTION选项,那么无论是利用Enterprise Manager还是系统存储历程sp_helptext都无法查看到存储历程的源代码.
12.3.2 重新命名存储历程
改正存储历程的名字利用系统存储历程sp_rename. 其号令格局为:
sp_rename 原存储历程名, 新存储历程名
例12-4 :将存储历程reptq1 改正成newproc 其语句为:
sp_rename reptq1, newproc
别的,通过Enterprise Manager 也可改正存储历程的名字,其操作历程与WINDOWS 下改正文件名字的操作近似.即首先选中需改正名字的存储历程,然后右击鼠标,在弹出菜单中选取rename 选项,最后输入新存储历程的名字.
12.3.3 删除存储历程
删除存储历程利用drop 号令,drop 号令可将一个或多个存储历程大概存储历程组从
当前数据库中删除.其语法法则为:
DROP PROCEDURE {procedure}} [,…n]
例12-5: 如将存储历程reptq1 从数据库中删除,则履行:
drop procedure reptq1
12.3.4 履行存储历程
履行已成立的存储历程利用EXECUTE 号令,其语法以下:
[EXECUTE]
{[@return_statur=]
{procedure_name[;number] | @procedure_name_var}
[[@parameter=] {value | @variable [OUTPUT] | [DEFAULT] [,…n]
[WITH RECOMPILE]
各参数的含义以下:
@return_status
是可选的整型变量,用来存储存储历程向调用者返回的值.
@procedure_name_var
是一变量名用来代表存储历程的名字.
别的参数据和保存字的含义与CREATE PROCEDURE 中介绍的一样.
例12-6: 该存储历程被用来将两个字符串通接成一个字符串,并将后果返回.成立存储历程:
12.3.5 改正存储历程
改正从前用CREATE PROCEDURE 号令成立的存储历程,并且不改变权限的授与情形以及不影响任何别的的独立的存储历程或触发器常利用ALTER PROCEDURE 号令.其语法法则是:
ALTER PROC[EDURE] procedure_name [;number]
[ {@parameter data_type } [VARYING] [= default] [OUTPUT]] [,...n]
[WITH
{RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION}]
[FOR REPLICATION]
AS
sql_statement [...n]
此中各参数和保存字的具体含义请参看CREATE PROCEDURE 号令.
下面将举一个例子使读者对该号令有更为深化的理解.
将该段代码输入到SQL Server Query Analyzer 窗口中运行后后果为:
注意:由于在ALERT PROCEDURE中利用了WITH ENCTYPTION保存字,所以在查看改正后的存储历程源代码时看到是一些代码.
本文地址: | 与您的QQ/BBS好友分享! |