SQL-server中编写存储过程及其调用

在使用Transanct-SQL语言编程过程中,可以将某些多次调用以实现某个特定任务的代码段编写成一个过程,将其保存在数据库中,并由SQL-Server服务器通过过程名调用它们,这些过程就叫做存储过程。

存储过程可以实现一下功能:

1.接收输入参数并以输出参数的格式想调用过程或批处理返回多个值。

2.包含用于在数据库中执行操作(包括调用其他过程)的编程语句。

3.向调用过程或批处理返回状态值,以指明成功或失败(以及失败的原因)。

存储过程分为有参的和无参的:

比如:

定义无参构造函数:

createprocup_info

@startDatedatetime,

@endDatedatetime

as

seletorderID,CompanyName,Salename,OrderDate

fromOrdersinnerjoinCustomer

onOrders.CustomerID=Cistomer.CustomerID

Seller.SaleID=Orders.SaleID

where(Orders.OrderDatebetween@startDateand@endDate)

go

调用构造函数:

execup_info

有输出的参存数过程的定义:

createprocmp_Customer

@CIDCHAR(3),

@CompanyNameCHAR(60)OUTPUT

@AddressCHAR(40)OUTPUT

AS

SELECT@CompanyName=CompanyName,

@Address=ADDRESS

FROMCustomerc

wherec.CustomerID=@CID

调用有参数的存储过程:

DECLARE@CompanyNameASCHAR(60)

DECLARE@ADDRESSASCHAR(40)

DECLARE@CIDASCHARE(3)

execmp_Customer'co2'

@CompanyNameoutput,

@Addressoutput

select@CompanyNameas'公司名'@Addressas'公司地址'

你可能感兴趣的:(server)