av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

關于Oracle和SQL存儲調試和出錯處理

瀏覽:4日期:2023-11-13 18:04:03
在大型數據庫中,因為開發的需要,經常需要調用Procedure。在Oracle和SQLServer上開發Procedure因為語法不同,而有所區別;調試Procedure,在兩個系統上都不太輕易,尤其是進行錯誤處理時更是如此。 調試: 1. 對于Oracle的調試,可以借助于第三方的工具,比如Pl/SQL Developer,以6.0.5.926版本為例,首先對該Procedure右鍵處理,添加“add debug information”,然后選擇“test”,打開新的測試窗口,在下方對應的輸入輸出變量處,添加相應的測試數據。注重:這里的數據輸入,不需要引號,輸出參數不需要輸入! 然后點擊“start debugger”,或者按F9進行測試,可以選擇測試的步驟如“step into”等,然后可以在下面的script窗口看到中間變量。 2. 對于SQLServer調試,在沒有找到較好的第三方工具的情況下,目前采用的是將中間的變量值或者SQL語句插入到另一個表中,或者直接print出來的方式。第一種需要借助 exec('') 方法,注重里面的取變量值的寫法,可參考下面的例子: exec('update SupplyplanLack set Completedate = GetDate()from supplyPlanLack a where '+ @ssTmp +' and'+@iCompleteQty+' >= (select s.RequestQty * a.RationQty as ReQQtyfrom Balance a, SupplyPlan s where a.Vehicle = s.Vehicleand a.Part=s.Part and a.SupplyPlanNo = s.SupplyPlanNoand '+ @ssTmp +')')在print中,需要注重類型的轉換,一般是借用 convert(varchar(11),@spNOTo) 方法來實現,否則會提示類型轉換錯誤。 3. 錯誤處理上,對于SQLServer可以采用開始自定義變量,然后根據不同判定,改變該值再推出的方法來處理,見下例: set @exec_num=0if (@spNOFrom=0 or @spNOTo=0 or @reuseUser=NULL)beginset @exec_num=1goto the_endendthe_end:return或者是這種: set nocount onif (@property is null) or (@property = '')beginraiserror('Must specify a property name.',-1,-1)return (1)end或者是對該錯誤全局變量 @@error 數值的判定上。
標簽: Oracle 數據庫
主站蜘蛛池模板: 亚洲性天堂 | 成人手机在线观看 | 亚洲男人av| 日日干天天射 | 欧美日韩精品在线 | www.粉色视频在线观看 | 麻豆av网站 | 午夜影院在线观看视频 | 日本毛片在线观看 | 久久免费网 | 免费一区二区三区 | 91久久国产精品 | 五月天开心网 | 超碰人人射| 色婷婷网 | av片在线观看 | 可以看的黄色网址 | 91av在线看 | 亚洲成a人片 | 欧美黄色一级视频 | 亚洲一区二区三区视频 | www久久久 | 精品国产毛片 | 自拍偷拍欧美日韩 | 一区二区小视频 | 国内av在线 | 日韩成人精品 | 国产一区高清 | www.三级 | 久久久一本| 日韩精品极品 | 日韩精品视频在线免费观看 | 国产精品99久久久久久久久 | 亚洲精品911 | 久久99深爱久久99精品 | 成人免费视频网址 | 视频一二区 | 中国黄色1级片 | 黄色片www | 狠狠干综合网 | 精品免费在线观看 |