在開發數據庫系統的過程中,經常要寫很多的存儲過程。為了統一格式和簡化開發過程,我編寫一些存儲過程,用來自動生成存儲過程。下面就為您簡單介紹一下它們。其中一個用於生成Insert過程,另一個用於生成Update過程。
Sp_GenInsert
該過程運行後,它為給定的表生成一個完整的Insert過程。如果原來的表有標識列,您得將生成的過程中的SETIDNTITY_INSERTON語句手工刪除。
語法如下
sp_GenInsert<TableName>,<StoredProcedureName>
以northwind數據庫為例
sp_GenInsert'Employees','INS_Employees'
最後會生成一個Insert存儲過程。利用它,您可以作進一步的開發。
Sp_GenUpdate
它會為一個表生成update存儲過程。語法如下:
sp_GenUpdate<TableName>,<PrimaryKey>,<StoredProcedureName>
以northwind數據庫為例
sp_GenUpdate'Employees','EmployeeID','UPD_Employees'
運行後生成如下所示的存儲過程:
CreateProcedureUPD_Employees
@EmployeeIDint
@LastNamenvarchar(40),
@FirstNamenvarchar(20),
@Titlenvarchar(60),
@TitleofCourtesynvarchar(50),
@BirthDatedatetime,
@HireDatedatetime,
@Addressnvarchar(120),
@Citynvarchar(30),
@Regionnvarchar(30),
@PostalCodenvarchar(20),
@Countrynvarchar(30),
@HomePhonenvarchar(48),
@Extensionnvarchar(8),
@Photeimage,
@Notesntext,
@ReportsToint,
@PhotoPathnvarchar(510)
AS
UPDATEEmployees
SET
LastName=@LastName,
FirstName=@FirstName,
Title=@Title,
TitleofCourtesy=@TitleofCourtesy,
BirthDate=@BirthDate,
HireDate=@HireDate,
Address=@Address,
City=@City,
Regin=@Regin,
PostalCode=@PostCode,
Country=@Country,
HomePhone=@HomePhone,
Extension=@Extension,
Photo=@Photo
Notes=@Notes,
ReportsTo=@ReportsTo,
PhotoPath=@PhotoPath