我有以下的Try語句,儘管寫入數據庫的值太大,在此之後的所有內容都不會運行。 我應該寧願使用Exit Try而不是Exit Sub?退出嘗試與退出子
Try
Dim conn As OracleConnection
Dim cmdProduction As New OracleCommand
conn = GetConnect()
conn.Open()
cmdProduction.Connection = conn
cmdProduction.CommandText = "INSERT INTO PRODUCTION (DateTime, Plant, Runhours, Tons, Shift, Sft, Plant_Ord) Values ('" & DateTime & "','FM1-Selox','" & (seloxRuntime/60) & "','" & seloxTons & "','" & theShift & "','" & sft & "','51')"
cmdProduction.ExecuteNonQuery()
Catch ex As Exception
WriteToFile("Production - Production : Database Error : " & ex.Message)
conn.Close()
Exit Sub
Finally
conn.Close()
End Try
你最大的問題是'趕上例外'。別。永遠。抓住。例外。這是糟糕的編程。你不妨在你的代碼中使用'Goto'。總是要捕捉特定的例外,只有你**可以正確處理。 – Enigmativity 2015-04-02 08:43:23
這段代碼還有另一個主要問題:SQL注入=> [給我參數化的SQL,或者給我死亡](http://blog.codinghorror.com/give-me-parameterized-sql-or-give-me -death /) – 2015-04-02 09:16:07