SQL Server編寫預存程序小工具(一)

來源:互聯網
上載者:User
server|預存程序

eNet技術學院,著作權

在開發資料庫系統的過程中,經常要寫很多的預存程序。為了統一格式和簡化開發過程,我編寫一些預存程序,用來自動產生預存程序。下面就為您簡單介紹一下它們。其中一個用於產生Insert過程,另一個用於產生Update過程。


Sp_GenInsert

該過程運行後,它為給定的表產生一個完整的Insert過程。如果原來的表有識別欄位,您得將產生的過程中的SET IDNTITY_INSERT ON 語句手工刪除。

文法如下

sp_GenInsert < Table Name >,< Stored Procedure Name >

以northwind 資料庫為例

sp_GenInsert ’Employees’, ’INS_Employees’

最後會產生一個Insert預存程序。利用它,您可以作進一步的開發。


Sp_GenUpdate

它會為一個表產生update預存程序。文法如下:

sp_GenUpdate < Table Name >,< Primary Key >,< Stored Procedure Name >

以northwind 資料庫為例

sp_GenUpdate ’Employees’,’EmployeeID’,’UPD_Employees’

運行後產生如下所示的預存程序:

Create Procedure UPD_Employees

@EmployeeID int

@LastName nvarchar(40) ,

@FirstName nvarchar(20) ,

@Title nvarchar(60) ,

@TitleofCourtesy nvarchar(50) ,

@BirthDate datetime ,

@HireDate datetime ,

@Address nvarchar(120) ,

@City nvarchar(30) ,

@Region nvarchar(30) ,

@PostalCode nvarchar(20) ,

@Country nvarchar(30) ,

@HomePhone nvarchar(48) ,

@Extension nvarchar(8) ,

@Phote image ,

@Notes ntext ,

@ReportsTo int ,

@PhotoPath nvarchar(510)

AS

UPDATE Employees

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

WHERE EmployeeID = @EmployeeID


使用以上的兩個預存程序,節省了我不少時間。特別是在改變了表結構後,重新構造各個預存程序的過程中。您可以改寫這兩個程式,來自動產生別的預存程序。



聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.