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

來源:互聯網
上載者:User
SQL 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.