儲存過程輔助除錯

2021-07-02 14:50:43 字數 1424 閱讀 6484

程式呼叫儲存過程,方便簡潔,而且如果邏輯有問題,修改儲存過程就行,沒有必要對程式進行公升級,這個是最大的好處。但是現實中,儲存過程往往也會出現一些問題.

現在談談怎麼用輔助方式來發現儲存過程的一些技巧.

1)別名。假如正式生產環境下,客戶發現你的程式有問題,你環境程式呼叫的儲存過程proc_a有問題。你想修改proc_a的,但是又不能立即修改。其實,你可以這麼做,將儲存過程proc_a的內容拷貝出來,重新建立乙個名字為proc_b的儲存過程,這樣你就可以在正式環境下直接傳入相關的引數來執行proc_b看看執行的效果直到修改好proc_b,沒有問題後。再將新修改的儲存過程內容替換上去

2)在除錯儲存過程,需要看看執行到哪一步的效果,可以用print列印相關日誌檢視到效果.

類似以下的儲存過程proc_a:留意定義的@msg變數,將整形以及字串的轉換後直接列印出來.這樣呼叫儲存過程之後就可以看到下面的列印日誌

create proc proc_a

(

@id varchar(20)

)

as

begin

declare @msg varchar(255)

select @msg='test'

print @msg

declare @a int

a=10

select @msg = convert( varchar, @a)

print @msg

end

go

print 'proc_a'

go

3)還可以接入建立表來幫助定位問題,在儲存過程裡面插入test表一些相關資料,然後檢視test表執行到哪一部了.

drop table test

create table test

(id numeric(8, 0) not null,

msg varchar(255) null

)create proc proc_a

(

@id varchar(20)

)

as

begin

insert into test(id,msg) values(0, convert( varchar, @id) )

end

go

print 'proc_a'

go

上面的儲存過程呼叫完成之後,查詢test表就可以看到效果了

儲存過程除錯

sql server2008儲存過程除錯 昨天被問到sql server中儲存過程怎麼除錯,我曾經寫儲存過程,除錯方法非常笨拙,就是逐條執行語句,然後檢視結果是不是預期的,這樣的除錯方法,實在是無奈之舉,極大程度地限制了開發速度和準確性。今天在他的提點下,研究了下sql server 2008的儲存...

除錯儲存過程

在編寫儲存過程中,寫了n多行 結果一執行程式,就在資料庫這裡報錯。那麼如何在寫完儲存過程之後就能立即測試一下村粗過程呢?1 不會寫t sql來正確執行儲存過程 當你想到要除錯儲存過程的時候,人家微軟一定早已經想到並且做到了。微軟一定為沒有很好資料庫程式設計的人員開發了 傻瓜式 的工具。我們應該去儲存...

TOAD 除錯儲存過程

set serveroutput on declare var number begin sql語句 dbms output.put line column name ci end 1.基本結構 create or replace procedure 儲存過程名字 引數1 in number,引數2...