SQL Server儲存過程建立和修改

2022-04-07 09:02:47 字數 2477 閱讀 6975

開啟sql server 2005的管理工具,選中需要建立儲存過程的資料庫,找到「可程式設計性」,展開後可以看到「儲存過程」。右鍵點選它,選擇「新建儲存過程」,右側的編輯視窗開啟了,裡面裝著微軟自動生成的sql server建立儲存過程的語句。

將儲存過程的名字,引數,操作語句寫好後,點選語法分析,沒有錯誤就直接「f5」執行就好了,儲存過程建立完畢,以下是乙個基本的儲存過程的**:

create procedure get_data    

(

@dealer_id varchar(

50) //

定義資料dealer_id 型別為varchar

)

as

select * from mydata where dealer_id = @dealer_id

既然建立儲存過程已經會了,那麼修改還會難嗎?顯然不會。修改儲存過程也是相當的容易。首先,重新整理當前資料庫的儲存過程列表,這時就能看到你剛建立的儲存過程的名字了,右鍵點選它,選擇修改,右側又開啟了乙個編輯視窗,裝著的就是修改儲存過程的**(如下)

alter procedure [dbo].[get_data]   (    

@dealer_id varchar(

50),

@period varchar(20)

)

as

select * from mydata where dealer_id = @dealer_id and period = @period

1

create procedure proc_insert_data_detail

2 @dealerid varchar(50

),

3 @fieldname varchar(2000),

4 @fieldvalue varchar(2000)

5as 6

begin 7

declare @count int

8 set @count = (select count(*) from mydata_details where dealerid =@dealerid) 9

10 if (@count>0)11

begin

12 update mydata_details set dealvalue = @fieldvalue where dealerid =@dealerid

13end

14else

15begin

16insert into mydata_details (dealerid) values (@dealerid)

17end

18 end

1

alter procedure proc_insert_data_detail

2 @dealerid varchar(50

),

3 @fieldname varchar(2000),

4 @fieldvalue varchar(2000)

5as 6

begin 7

declare @count int

8 declare @strsql varchar(2000)

9 set @count = (select count(*) from mydata_details where dealerid =@dealerid)

1011 if (@count>0)12

begin

13 set @strsql = '

update mydata_details set

'+ @fieldname + '

= ''' +@fieldvalue + '''

where dealerid =

'+@dealerid

14exec(@strsql)

15end

16else

17begin

18insert into mydata_details (dealerid) values (@dealerid)

19 set @strsql = '

update mydata_details set

'+ @fieldname + '

= ''' +@fieldvalue + '''

where dealerid =

'+@dealerid

20exec(@strsql)

21end

22 end

SQL Server 建立儲存過程

if exists select from sys.objects where name pro name drop proc pro name gocreate proc pro name param name param type default value asbegin sql語句 endp...

SQLServer 建立儲存過程範例

use 資料庫名稱 goset ansi nulls on goset quoted identifier on gocreate procedure dbo 儲存過程名稱 引數名稱1 char 20 引數名稱2 資料型別 長度 as begin 定義變數 declare 變數名稱 資料型別 長度 ...

SQL Server 建立分頁儲存過程

sql server 建立分頁儲存過程 分頁儲存過程 建立 create proc usp pagescore page int,頁數 count int,條數 sumpage int output 總頁數as begin 獲取總頁數,ceiling表示向上取整 set sumpage ceilin...