3.用创建存储过程向导创建存储过程 (1)在企业管理器中展开服务器。展开【数据库】文件夹,再选中要在 其中创建存储过程的数据库。在【工具】菜单上单击【向导】命合。 (②)在弹出的【选择向导】窗口展开【数据库】文件夹。【创建存储过 程向导】。 (3)选择下一步,弹出【选择数据库】口,选择欲建立存储过程的数 据库。选择【下一步】,进入【选择存储过程】脔口,在此可以看到在当 前数据库所建立的所有用户表名称,并有三个包含复选框的行,分别代表用 户所能建立的三种存储过程:插廴、删除及更新资料,请选择合适的复选框。 按【下一步】显示【正在完成创建存储过程向导】窗口,这个窗口列出所建 的存储过程名称及描泷。 (4)欲重新命名或编辑存储过程,在【正在完成创建存储过程向导】窗 口中按一下编辑,进廴【编辑存储过程属性】窗口,该脔口列出此存储过程 会影响的列,在选择列中选中的列名称将会被存储过程使用。 要重新命名存储过程,请清除名称编辑文本框中的名称,并用新的 名称替代。要编辑存储过程,进廴【编辑存储过程SQL】对话框,它可以检 査存储过程的 Transact-SQL程序代码。可以在编辑区域直接编辑代码,完 成后,可以按分析按钮检査语法错误,按确定返回【正在完成创建存储过程 向导】俊口。 (6)在【正在完成创建存储过程向导】窗口中单击确定按钮,即完成建 立存储过程
(1) 在企业管理器中展开服务器。展开【数据库】文件夹,再选中要在 其中创建存储过程的数据库。在【工具】菜单上单击【向导】命令。 (2) 在弹出的【选择向导】窗口展开【数据库】文件夹。【创建存储过 程向导】。 (3) 选择下一步,弹出 【选择数据库】窗口, 选择欲建立存储过程的数 据库。选择【下一步 】, 进入 【选择存储过程】 窗口,在此可以看到在当 前数据库所建立的所有用户表名称,并有三个包含复选框的行,分别代表用 户所能建立的三种存储过程:插入、删除及更新资料,请选择合适的复选框。 按【下一步】显示【正在完成创建存储过程向导】窗口,这个窗口列出所建 的存储过程名称及描述。 (4) 欲重新命名或编辑存储过程,在【正在完成创建存储过程向导】窗 口中按一下 编辑 ,进入【编辑存储过程属性】窗口,该窗口列出此存储过程 会影响的列,在选择列中选中的列名称将会被存储过程使用。 (5) 要重新命名存储过程,请清除 名称 编辑文本框中的名称,并用新的 名称替代。要编辑存储过程,进入【编辑存储过程 SQL】对话框,它可以检 查存储过程的Transact-SQL 程序代码。可以在编辑区域直接编辑代码,完 成后,可以按分析按钮检查语法错误,按确定返回【正在完成创建存储过程 向导】窗口。 (6) 在【正在完成创建存储过程向导】窗口中单击确定按钮,即完成建 立存储过程。 3.用创建存储过程向导创建存储过程
10-1-3管理存过程 存储过程被创建之后,它的名字就存储在桑统表 sysobjects中,它的源代码存放在系统表 syscomments中。可以使用企业管理器或桑统存储过程来查看用户创建的存储过程。 1.在企业管理器中查看存储过程的定义 (1)业管理器中展开服务器组,然后展开服务器 (②)展开【数据库】文件夹,展开存储过程所属的数据库,单击【存储过程】文件夹 (3)右侧的详细信息脔格中,鼠标右键单击需要査看的存储过程,弹出快捷菜单,在弹 出菜单中选择【属性】命爷。弹出存储过程属性对话框,从中可以查看存储过程的定义。 创存储过程向导-rU信息管理 区存错过程属性-at成绩1 播下帮题件,对于每个,您都可以的建 择存储过 常规 名称a成绩 权限) 所有者 创建日期 2004-12-1319:16:58 dg 文本〔 CREATE PROCEDURE [delete 成绩 Nvarchar Nvarchar] 课程 Nvarchar] 1,17/17 检查语法¢) 〈上一步①)下一步0取消 确定 取消 应用 帮助
存储过程被创建之后,它的名字就存储在系统表sysobjects中,它的源代码存放在系统表 syscomments中。可以使用企业管理器或系统存储过程来查看用户创建的存储过程。 1.在企业管理器中查看存储过程的定义 (1)业管理器中展开服务器组,然后展开服务器。 (2)展开【数据库】文件夹,展开存储过程所属的数据库,单击【存储过程】 文件夹。 (3)右侧的详细信息窗格中,鼠标右键单击需要查看的存储过程,弹出快捷菜单,在弹 出菜单中选择【属性】命令。弹出存储过程属性对话框,从中可以查看存储过程的定义。 10-1-3 管理存过程
2.在企业管理器中查看存储过程的相关性 (1)在企业管理器中展开服务器组,然后展开服务器。 (②)展开【数据库】文件夹,展开存储过程所属的数据库,单击【存储过程】文件夹 (③)在右侧的详细信息脔格中,鼠标右键单击需要査看的存储过程,在弹出菜单中选 择【所有任务】菜单,然后单击【显示相关性】命合3 3.在企业管理器中查看关于扩展存储过程的信息 (1)在企业管理器中展开服务器组,然后展开服务器。 (2)展开【数据库】文件夹,展开 master数据库,然后单击【扩展存储过程】文件夹。 (3)在右侧的详细信息脔格中,右击扩展存储过程,然后单击【属性】命爷。 (4)单击(".")按钮,查找包含此扩展存储过程的DLL。(可选) (5)单击【权限】,查看或设置此扩展存储过程的权限。(可选) 4.使用系统存储过程来查看用户创建的存储过程 可供使用的系统存储过程及其语法形式如下 sp_ help:报告有关数据库对象、用户定义数据类型或 SQL Server所提供的数 据类型的信息(语法格式: sp _ help[[@ objname=]name])。 sp_ helptext:用于显示规则、默认值、未加密的存储过程、用户定义函数、触 发器或视图的文本。(语法格式: sp helptext[@ objname=]'name")。 sp_ depends:用于显示有关数据库对象相关性的信息(语法格式:sp_ depends @objname =]'object) sp_stored_procedures:用于返回当前环境中的存储过程列表。 【例10-2】查询显示“信息管理”存储过程的源代码信息和参数及其数据类型。 sp_ helptext信息管理 sp help信息管理
(1) 在企业管理器中展开服务器组,然后展开服务器。 (2) 展开【数据库】文件夹,展开存储过程所属的数据库,单击【存储过程】文件夹。 (3) 在右侧的详细信息窗格中,鼠标右键单击需要查看的存储过程,在弹出菜单中选 择【所有任务】菜单,然后单击【显示相关性】命令3. 3. 在企业管理器中查看关于扩展存储过程的信息 (1)在企业管理器中展开服务器组,然后展开服务器。 (2)展开【数据库】文件夹,展开 master 数据库,然后单击【扩展存储过程】文件夹。 (3)在右侧的详细信息窗格中,右击扩展存储过程,然后单击【属性】命令。 (4)单击("...")按钮,查找包含此扩展存储过程的 DLL。(可选) (5)单击【权限】,查看或设置此扩展存储过程的权限。(可选) 4.使用系统存储过程来查看用户创建的存储过程 可供使用的系统存储过程及其语法形式如下: Ø sp_help:报告有关数据库对象、用户定义数据类型或 SQL Server所提供的数 据类型的信息(语法格式:sp_help [ [ @objname = ] name ])。 Ø sp_helptext:用于显示规则、默认值、未加密的存储过程、用户定义函数、触 发器或视图的文本。(语法格式:sp_helptext [ @objname = ] 'name')。 Ø sp_depends:用于显示有关数据库对象相关性的信息(语法格式:sp_depends [ @objname = ] 'object')。 Ø sp_stored_procedures:用于返回当前环境中的存储过程列表。 【例10-2】查询显示“信息管理”存储过程的源代码信息和参数及其数据类型。 sp_helptext 信息管理 sp_help信息管理 go 2.在企业管理器中查看存储过程的相关性
10-1-4修改存储过程 有2种方法 1先做删除然后再重建 2使用 ALTER PROCEDURE语句一次性地完成修改操作 ALTER PROCEDURE语句修改存储过程语法格式如下 ALTER PROC[ EDURE]存储过程名[; number] [@parameter data_type)[ vaRYinG ][ default][ OUTPUT ]] n I WITH RECOMPILE ENCRYPTION RECOMPILE ENCRYPTIONI I FOR REPLICATION I AS sqlstatement[.n 修改过程与创建过程的语法基本上是一致的。若要修改存储过程的名称,可 企业管理器中或用桑统提供的 sp_ rename存储过程进行重命名操作。 sp__rename命合的语法形式如下: sp_rename更改前名字,更改后名字 【例10-3】将“信息管理”存储过程更名为“计算机科学”。 sp- rename信息管理,计算机科学
有2种方法: 1 先做删除然后再重建 2 使用ALTER PROCEDURE语句一次性地完成修改操作 ALTER PROCEDURE语句修改存储过程语法格式如下: ALTER PROC[EDURE]存储过程名[;number] [ { @parameter data_type }[ VARYING ] [ = default ] [ OUTPUT ] ] [ ,...n ] [ WITH { RECOMPILE | ENCRYPTION | RECOMPILE , ENCRYPTION } ] [ FOR REPLICATION ] AS sql_statement [ ...n ] 修改过程与创建过程的语法基本上是一致的。若要修改存储过程的名称,可 企业管理器中或用系统提供的sp_rename存储过程进行重命名操作。 sp_rename命令的语法形式如下: sp_rename 更改前名字, 更改后名字 【例10-3】将“信息管理”存储过程更名为“计算机科学” 。 sp_rename 信息管理,计算机科学 10-1-4 修改存储过程
10-1-5执行存储过程 可用 EXECUTE语句运行一个存储过程,也可以合存储过程自动运行。当一个存储过 程标识为自动运行,在每次启动 SQL Server2000时,该存储过程便会自动运行 (由 sysadmin固定服务器角色使用sp_ preception过程可置存储过程为自动启动。 执行存储过程语法如下 [EXEC[UTE]]{@返回状态码={过程名[:分组号数]@过程名变量}} [[@参数名=]{参数值|@参数变}[[ OUTPUT] DEFAULT][,…,]] IWITH RECOMPILE] 参数说明: 返回状态码∶是一个可选的整型变量,用于保存存储过程的返回状态。O表示成功执 行;-1~-99表示执行出错。调用存储过程的批处理或应用程序可对该状态值进行判 断,以便转至不同的处理流程。 分组号数:同创建存储过程中的 number。 @参数名参数值:在给定参数值时,如果没有指定参数名,那么所有参数值都必须 以 CREATE PROC语句中定义的顺序给出;若使用“@参数名:参数值”格式,则参数 值无需严格按定义时的顺序出现。只要有一个参数使用了“@参数名;参数值”格式, 则所有的参数都必须使用这种格式。 OUTPUT:是指定存储过程必须返回一个参数。如果该参数在 CREATE PROC语句 中不是定义为○ UTPUT的话,则存储过程不能执行。如果指定 OUTPUT.参数的目 的是为了使用其返回值,那么参数传递必须使用变量,即要用“@参数名:@参数变量” 这种格式。 WITH RECOMPILE:意为强制重新编译(计划)。若无需要,建议尽量少用该选项, 因为它消耗较多的采统资源
可用EXECUTE语句运行一个存储过程,也可以令存储过程自动运行。当一个存储过 程标识为自动运行,在每次启动SQL Server 2000时,该存储过程便会自动运行。 (由sysadmin固定服务器角色使用sp_procoption过程可置存储过程为自动启动。) 执行存储过程语法如下: [EXEC[UTE]]{[@返回状态码=]{过程名[:分组号数]|@过程名变量}} [[@参数名=]{参数值|@参数变}[[OUTPUT]|[DEFAULT]][,…]] [WITH RECOMPILE] 参数说明: 返回状态码:是一个可选的整型变量,用于保存存储过程的返回状态。0表示成功执 行;-1~-99表示执行出错。调用存储过程的批处理或应用程序可对该状态值进行判 断,以便转至不同的处理流程。 分组号数:同创建存储过程中的number。 @参数名:参数值:在给定参数值时,如果没有指定参数名,那么所有参数值都必须 以CREATE PROC语句中定义的顺序给出;若使用“@参数名:参数值”格式,则参数 值无需严格按定义时的顺序出现。只要有一个参数使用了“@参数名;参数值”格式, 则所有的参数都必须使用这种格式。 OUTPUT:是指定存储过程必须返回一个参数。如果该参数在CREATE PROC语句 中不是定义为OUTPUT的话,则存储过程不能执行。如果指定OUTPUT.参数的目 的是为了使用其返回值,那么参数传递必须使用变量,即要用“@参数名:@参数变量” 这种格式。 WITH RECOMPILE:意为强制重新编译(计划)。若无需要,建议尽量少用该选项, 因为它消耗较多的系统资源。 10-1-5 执行存储过程