SQL-server中编写存储过程及其调用
2011-09-10 09:58
435 查看
在使用Transanct-SQL语言编程过程中,可以将某些多次调用以实现某个特定任务的代码段编写成一个过程,将其保存在数据库中,并由SQL-Server服务器通过过程名调用它们,这些过程就叫做存储过程。
存储过程可以实现一下功能:
1.接收输入参数并以输出参数的格式想调用过程或批处理返回多个值。
2.包含用于在数据库中执行操作(包括调用其他过程)的编程语句。
3.向调用过程或批处理返回状态值,以指明成功或失败(以及失败的原因)。
存储过程分为有参的和无参的:
比如:
定义无参构造函数:
create proc up_info
@startDate datetime,
@endDate datetime
as
selet orderID,CompanyName,Salename,OrderDate
from Orders inner join Customer
on Orders.CustomerID=Cistomer.CustomerID
Seller.SaleID=Orders.SaleID
where (Orders.OrderDate between @startDate and @endDate)
go
调用构造函数:
exec up_info
有输出的参存数过程的定义:
create proc mp_Customer
@CID CHAR(3),
@CompanyName CHAR(60) OUTPUT
@Address CHAR (40) OUTPUT
AS
SELECT @CompanyName=CompanyName,
@Address=ADDRESS
FROM Customer c
where c.CustomerID=@CID
调用有参数的存储过程:
DECLARE @CompanyName AS CHAR(60)
DECLARE @ADDRESS AS CHAR(40)
DECLARE @CID AS CHARE(3)
exec mp_Customer 'co2'
@CompanyName output,
@Address output
select @CompanyName as '公司名',@Address as'公司地址'
存储过程可以实现一下功能:
1.接收输入参数并以输出参数的格式想调用过程或批处理返回多个值。
2.包含用于在数据库中执行操作(包括调用其他过程)的编程语句。
3.向调用过程或批处理返回状态值,以指明成功或失败(以及失败的原因)。
存储过程分为有参的和无参的:
比如:
定义无参构造函数:
create proc up_info
@startDate datetime,
@endDate datetime
as
selet orderID,CompanyName,Salename,OrderDate
from Orders inner join Customer
on Orders.CustomerID=Cistomer.CustomerID
Seller.SaleID=Orders.SaleID
where (Orders.OrderDate between @startDate and @endDate)
go
调用构造函数:
exec up_info
有输出的参存数过程的定义:
create proc mp_Customer
@CID CHAR(3),
@CompanyName CHAR(60) OUTPUT
@Address CHAR (40) OUTPUT
AS
SELECT @CompanyName=CompanyName,
@Address=ADDRESS
FROM Customer c
where c.CustomerID=@CID
调用有参数的存储过程:
DECLARE @CompanyName AS CHAR(60)
DECLARE @ADDRESS AS CHAR(40)
DECLARE @CID AS CHARE(3)
exec mp_Customer 'co2'
@CompanyName output,
@Address output
select @CompanyName as '公司名',@Address as'公司地址'
相关文章推荐
- 代码调用存储过程超时,SQL Server Management Studio里运行很快 (改进)
- 代码调用存储过程超时,SQL Server Management Studio里运行很快 (改进)
- 【转载】Qt调用Server SQL中的存储过程
- pl/sql 编写 Oracle存储过程 调用存储过程返回集合
- 我也谈谈 代码调用存储过程超时,SQL Server Management Studio里运行很快的问题
- 【转】Java 调用SQL 语法Server 的存储过程详解
- 在存储过程中调用外部的动态连接库(MS SQL Server7.0/2000环境)
- 生成sql server 数据库 脚本的 存储过程和调用
- pl/sql 编写 Oracle分页的存储过程 Java调用该过程
- MSSQL:SQL Server中删除表字段及其关系的存储过程脚本
- C# asp.net SQL存储过程写法Insert 插入语句,及其在asp.net中的调用方法
- 如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- 如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- Oracle 编写存储过程,在pl/sql中调用编写好的存储过程例子
- sql 7 之 创建存储过程及其调用
- 用pl/sql自己编写简单的存储过程及jdbc调用存储过程
- 编写安全的SQL Server扩展存储过程
- 收集到的:如何调用存储过程,有返回值的,有参数的,存储过程中调用存储过程。(MS SQL Server)
- 编写的SQLServer扩展存储过程
- 代码调用存储过程超时,SQL Server Management Studio里运行很快