<% option explicit'-------------
'錯誤處理:
'-------------
'1.需在每一行可能發生錯誤的**上使用"on error" 和 "if err.number <> 0 then ..." 結構。 注意作用域!
'2.on error語句: 啟用或禁用錯誤處理程式
' * on error goto 0: 禁用錯誤處理。
' * on error resume next:開啟錯誤處理。
' 若未使用on error resume next語句,所發生的執行時錯誤將顯示錯誤資訊,同時,**的執行也隨之終止。
' 但當你採用它時,就會使程式不顧執行時錯誤,跳過產生錯誤的語句繼續執行。之後可以在過程內部建立錯誤處理例程。
' 若呼叫其他過程時,on error resume next語句變為非活動的,應在每個呼叫的例程中執行on error resume next 語句。
sub err1()
dim i
on error resume next
i=99/0
if err.number<>0 then
response.write ("出錯了")
response.end() '如果不寫的話,會繼續執行下面程式。
end if
response.write ("錯誤已跳過")
end sub
sub err2()
on error resume next
response.write (var1)
response.write (111)
on error goto 0
response.write (var2)
response.write (222)
end sub
sub err3() '//用err.raise自定義錯誤資訊
on error resume next
dim conn
set conn = server.createobject("adodb.connection")
'這個dsn實際上不存在,所以返回錯誤資訊
conn.open "foo"
if err.number <> 0 then
err.clear
'err.raise可以憑空產生錯誤
err.raise vbobjecterror + 7, "errtest.asp", "connection open method failed"
response.write ("已使用err.raise"&"
") end if
if err.number <> 0 then
response.write("error on line -> " & err.number - vbobjecterror)
response.write("
error source -> " & err.source)
response.write("
error desc -> " & err.description)
err.clear
end if
end sub
'call err1()
'//執行結果: 出錯了
'call err2()
'//執行結果:
'111
'microsoft vbscript 執行時錯誤 錯誤 '800a01f4' 變數未定義: 'var2'
call err3()
'//執行結果:
'已使用err.raise
'error on line -> 7
'error source -> errtest.asp
'error desc -> connection open method failed
%>
MySql錯誤處理 錯誤處理的例子
有幾種錯誤處理的宣告形式 如果任何錯誤 不是 not found 設定 l error 為 1 後繼續執行 declare continue handler for sqlexception set l error 1 如果發生任何錯誤 不是 not found 執行 rollback和產生一條錯誤...
MySql錯誤處理(三) 錯誤處理的例子
mysql錯誤處理 三 錯誤處理的例子 有幾種錯誤處理的宣告形式 如果任何錯誤 不是 not found 設定 l error 為 1 後繼續執行 declare continue handler for sqlexception set l error 1 如果發生任何錯誤 不是 not foun...
PHP 錯誤處理
在 php 中,預設的錯誤處理很簡單。一條訊息會被傳送到瀏覽器,這條訊息帶有檔名 行號以及一條描述錯誤的訊息。在建立指令碼和 web 應用程式時,錯誤處理是乙個重要的部分。如果您的 缺少錯誤檢測編碼,那麼程式看上去很不專業,也為安全風險敞開了大門。本教程介紹了 php 中一些最為重要的錯誤檢測方法。...