日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

SQL Server存儲過程中的異常處理

系統 2512 0

編程的異常處理很重要,當然Sql語句中存儲過程的異常處理也很重要,明確的異常提示能夠快速的找到問題的根源,節省很多時間……

  編程的異常處理很重要,當然Sql語句中存儲過程的異常處理也很重要,明確的異常提示能夠快速的找到問題的根源,節省很多時間。

  下面,我就以一個插入數據為例來說明Sql Server中的存儲過程怎么捕獲異常的 。

1、環境

  數據庫為Sql Server2008。

  表(Course)結構為:

  No char(10) primary key

  Name varchar(20)

  Comment varchar(50)

 2、存儲過程

  就以插入數據為例,其他的可以照著寫就行了。

  編程語言都有異常的捕獲與處理, 在 SqlServer2008 中也是這樣子的。

  對會出現異常的語句加上 begin try……end try ,然后進行異常捕捉:begin catch……end catch即可。

  錯誤代碼詳解 很容易就能找到。

  代碼如下:

?

以下是代碼片段:

Create proc sp_Insert_Course
@No char(10),
@Name varchar(20),
@Comment varchar(50),
@rtn int output
as
begin try
insert into Course values(@No,@Name,@Comment)
set @rtn=1
end try
begin catch
set @rtn=@@ERROR

--輔助信息
--select ERROR_LINE() as Line,
-- ERROR_MESSAGE() as message1,
-- ERROR_NUMBER() as number,
-- ERROR_PROCEDURE() as proc1,
-- ERROR_SEVERITY() as severity,
-- ERROR_STATE() as state1
end catch

?

 3、存儲過程執行

  相關代碼如下:

?

以下是代碼片段:

declare
@rtn int
exec sp_Insert_Course '114','語文','',@rtn output
print @rtn

?

  執行結果:

  正常的情況下,返回值為1,

  如果已經存在編號為“114”的數據,就會返回 ERROR_CODE:2627,

  其他的異常情況會返回相應的代碼

 4、說明

  如果程序有異常,把異常代碼返回,然后再進行相關的處理即可。

  SQL Server中的異常處理和別的數據庫(如Oracle)的有點差異,但是基本思想差不多, 在最后捕獲都可以得到異常。

SQL Server存儲過程中的異常處理


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 荔浦县| 承德县| 怀化市| 延庆县| 永定县| 德兴市| 云霄县| 赣州市| 方正县| 阿拉善右旗| 梨树县| 星座| 桂阳县| 浏阳市| 方正县| 昆明市| 来安县| 永川市| 磐石市| 高平市| 渑池县| 尚志市| 全椒县| 台山市| 沅陵县| 韶山市| 桂平市| 札达县| 左贡县| 双桥区| 桃江县| 宜阳县| 莱芜市| 惠来县| 偃师市| 柳林县| 波密县| 武穴市| 杭锦旗| 蕉岭县| 靖边县|