国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > SQL Server > 正文

SQL Server存儲過程創建和修改

2024-08-31 00:55:59
字體:
來源:轉載
供稿:網友
SQL Server存儲過程創建和修改

打開SQL Server 2005的管理工具,選中需要創建存儲過程的數據庫,找到“可編程性”,展開后可以看到“存儲過程”。右鍵點擊它,選擇“新建存儲過程”,右側的編輯窗口打開了,里面裝著微軟自動生成的SQL Server創建存儲過程的語句。

將存儲過程的名字,參數,操作語句寫好后,點擊語法分析,沒有錯誤就直接“F5”運行就好了,存儲過程創建完畢,以下是一個基本的存儲過程的代碼:

1 CREATE PROCEDURE Get_Data    2    (    3        @Dealer_ID VARCHAR(50)   4     )    5     AS    6 SELECT * FROM myData WHERE Dealer_ID = @Dealer_ID

既然創建存儲過程已經會了,那么修改還會難嗎?顯然不會。修改存儲過程也是相當的容易。首先,刷新當前數據庫的存儲過程列表,這時就能看到你剛創建的存儲過程的名字了,右鍵點擊它,選擇修改,右側又打開了一個編輯窗口,裝著的就是修改存儲過程的代碼(如下)

1 ALTER PROCEDURE [dbo].[Get_Data]    2    (    3        @Dealer_ID VARCHAR(50)   4     )    5     AS    6 SELECT * FROM myData WHERE Dealer_ID = @Dealer_ID

簡單的修改下吧,代碼如下

1  ALTER PROCEDURE [dbo].[Get_Data]    2    (    3        @Dealer_ID VARCHAR(50),4        @Period VARCHAR(20)5     )    6     AS    7     SELECT * FROM myData WHERE Dealer_ID = @Dealer_ID AND Period = @Period

F5 成功執行,修改存儲過程完成。http://www.cnblogs.com/sosoft/開始寫了一個存儲過程,用來實現數據的插入操作,說白了就是添加數據。這個存儲過程的代碼如下:

 1 CREATE PROCEDURE PROC_INSERT_DATA_ID 2   @DealerID varchar(50) 3 AS 4 BEGIN 5         DECLARE @COUNT  INT     6          7         SET @COUNT = (SELECT COUNT(*) FROM myDATA_Details WHERE DealerID = @DealerID) 8         IF (@COUNT>0)     9             BEGIN    10                 DELETE FROM myDATA_Details WHERE DealerID = @DealerID    11                 INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID)    12             END    13         ELSE    14             BEGIN    15                 INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID)    16             END    17     END

F5一下,創建成功,調用它插入數據,OK,沒問題插入成功,達到了預期的目的用于更新數據,代碼如下:

 1 CREATE PROCEDURE PROC_INSERT_DATA_DETAIL 2         @DealerID varchar(50),  3         @FieldName varchar(2000), 4         @FieldValue varchar(2000) 5     AS 6     BEGIN 7         DECLARE @Count INT 8         SET @Count = (SELECT COUNT(*) FROM myDATA_Details WHERE DealerID = @DealerID) 9 10         IF (@COUNT>0)11             BEGIN12                 UPDATE myDATA_Details SET DealValue = @FieldValue WHERE DealerID = @DealerID13             END14         ELSE15             BEGIN16                 INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID)17              END18     END

或者:修改后的代碼

 1 ALTER PROCEDURE PROC_INSERT_DATA_DETAIL 2         @DealerID varchar(50),  3         @FieldName varchar(2000), 4         @FieldValue varchar(2000) 5     AS 6     BEGIN 7         DECLARE @Count INT 8         DECLARE @StrSQL VARCHAR(2000) 9         SET @Count = (SELECT COUNT(*) FROM myDATA_Details WHERE DealerID = @DealerID)10 11         IF (@COUNT>0)12             BEGIN13                 SET @StrSQL = 'UPDATE myDATA_Details SET '+ @FieldName + ' = ''' +@FieldValue + ''' WHERE DealerID = '+ @DealerID14                 EXEC(@StrSQL)15             END16         ELSE17             BEGIN18                 INSERT INTO myDATA_Details (DealerID) VALUES (@DealerID)19                 SET @StrSQL = 'UPDATE myDATA_Details SET '+ @FieldName + ' = ''' +@FieldValue + ''' WHERE DealerID = '+ @DealerID20                 EXEC(@StrSQL)21             END22     END


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新昌县| 广灵县| 巴林右旗| 阿坝县| 浠水县| 呼玛县| 且末县| 凭祥市| 吉林省| 开封市| 天门市| 尼勒克县| 乐平市| 奈曼旗| 夏河县| 石河子市| 申扎县| 赤城县| 海林市| 新民市| 安阳县| 常山县| 北辰区| 彰武县| 华坪县| 辽宁省| 南岸区| 湖南省| 淳化县| 定安县| 潜江市| 惠来县| 松江区| 玉田县| 贡嘎县| 呈贡县| 苍梧县| 桑植县| 普安县| 蒲城县| 清水县|