- 5
- 0
- 约4.29千字
- 约 16页
- 2018-04-29 发布于河南
- 举报
网络数据库--存储过程
存储过程 本章内容:存储过程的概念、创建存储过程、执行存储过程、修改存储过程和删除存储过程 重点:创建存储过程和修改存储过程 难点:创建存储过程 存储过程 一.存储过程的概念 存储过程(stored procedure)是一组事先编译好的Transact-SQL代码。存储过程作为一个独立的数据库对象,可以作为一个单元被用户的应用程序调用。由于存储过程是已经编译好的代码,所以执行的时候不必再次进行编译,从而提高了程序的运行效率。 SQL Server的存储过程类似于其他编程语言里的过程(procedure),具体体现在: (1)存储过程可以接收参数,并以输出参数的形式返回多个参数给调用存储过程的过程或批处理。 (2)存储过程也可以容纳存储过程,可以在对数据库进行查询、修改的编程语句中调用其他的存储过程。 (3)可以返回执行存储过程的状态值以反映存储过程的执行情况。 存储过程 使用存储过程的好处: (1)执行速度快。存储过程在创建时就经过了语法检查和性能优化,因此在执行时不必再重复这些步骤。存储过程在经过第一次调用之后,就驻留在内存中,不必再经过编译和优化,所以执行速度快。在有大量批处理的Transact-SQL语句要重复执行的时候,使用存储过程可以极大地提高运行效率。 (2)模块化的程序设计。存储过程经过了一次创建以后,可以被调用无数次。用户可以独立于应用程序而对存储过程进行修改。可以按照独特的功能模式设计不同的存储过程以供使用。 (3)减少网络通信量。存储过程中可以包含大量的Transact-SQL语句,但存储过程作为一个独立的单元来使用。在进行调用时,只需要使用一个语句就可以实现,所以大大减少了网络上数据的传输。 (4)保证系统的安全性。可以设置用户通过存储过程对某些关键数据进行访问,但不允许用户直接使用T-SQL或企业管理器对数据进行访问。 存储过程 二.创建存储过程 1.使用T-SQL语句创建存储过程 创建存储过程使用CREATE PROC [EDURE]语句。 语法格式如下: CREATE PROC[EDURE] 存储过程名 [WITH RECOMPILE|ENCRYPTION|RECOMPILE, ENCRYPTION] AS SQL语句 其中:?? RECOMPILE:在执行完存储过程以后不在高速缓存里保留存储过程的备份,所以每次执行存储过程时都需要对存储过程进行重新编译和优化。 ??????????? ENCRYPTION:存储过程作为数据库对象将在syscomments表中留下完整的代码等信息。使用了ENCRYPTION参数以后,将对访问这些数据的入口进行加密。 例如: 存储过程 2.使用企业管理器创建存储过程 可以使用企业管理器进行存储过程的创建,步骤如下: (1)从树型结构上选中要建立存储过程的数据库节点,展开该节点。 (2)选中数据库节点下的存储过程节点,则右边的列表列出了数据库中目前所有的存储过程,如图7-1所示。 存储过程 (3)右击鼠标,从弹出的快捷菜单中选择“新建存储过程”命令,则系统弹出如图7-2所示的对话框。 (4)在Text文本框中输入正确的T语句。 (5)单击“语法检查”按钮,检查语法错误。 (6)单击“确定”按钮完成存储过程的创建。 存储过程 带参数的存储过程: CREATE PROC[edure] procedure_name [ ; number ] [ @parameter data_type [ = default ], …?] AS sql_statement s??? procedure_name:给出存储过程名; s??? number:对同名的存储过程指定一个序号; s??? @parameter:给出参数名; s??? data_type:指出参数的数据类型; s??? = default:给出参数的默认值; s??? sql_statement:存储过程所要执行的SQL语句,它可以是一组SQL语句,可以包含流程控制语句等。 存储过程 例:在Xk数据库中创建一个名为p_StudentPara的存储过程。该存储过程能根据指定的班级返回该班级代码对应的Student表中的记录。 Create procedure p_StudentPara @ClassNo varchar(8) As Select * from Student where ClassNo=@ClassNo 存储过程 存储过程一般用来完成数据查询和数据处理操作,所以在存储过程中不可以使用创建数据库对象的语句,即在存储过程中一般不能含有以下语句: CREATE TABLE CREATE VIEW CREATE DEFAULT CREATE RULE CREATE TRIGGER CREATE
您可能关注的文档
- 线性代数 7-4 平面与直线.ppt
- 线性代数 第1.3.4行列式的应用.ppt
- 线性代数 第1.1课 矩阵及其运算.ppt
- 线性代数 第1.3 行列式.ppt
- 线性代数 第一章 行列式 3.ppt
- 线性代数 第一章 行列式 1.ppt
- 线性代数 第一章 行列式 4.ppt
- 线性代数 第一章 行列式 2.ppt
- 线性代数 第一章 行列式 6.ppt
- 线性代数 第一章 行列式 5.ppt
- 部编版人教版初一七年级语文下册《假如生活欺骗了你》赛教课件.ppt
- 部编版人教版初一七年级语文下册《我的生活》名师课件.pptx
- 部编版人教版六年级语文上册《京剧趣谈》课件.pptx
- 部编人教版道德与法制三年级下册《说声“谢谢”》课件.ppt
- 部编版五年级语文上册《竹石教学》课件.ppt
- 部编版人教版初一七年级语文下册《了解“青”字族汉字的特点》名师课件.pptx
- 部编人教版道德与法治六年级下册第十课《我们爱和平》精品课件.ppt
- 部编版人教版初一七年级语文下册《假如生活欺骗了你》名师课件.ppt
- 部编版五年级语文上册《我的“长生果”》课件.ppt
- 部编版人教版初一七年级语文下册《晚春》名师课件.pptx
原创力文档

文档评论(0)