- - PR -
NullReferenceException
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-11-18 16:35
はじめて投稿します。
今仕事でASP(VB.NET)を使用し、WEBアプリケージョンの開発をしているんですけど、 どうしてもわからないバグが出るのでわかる人がいたら教えてください。 環境は .NET Framework1.1 MySQL ODBC 3.51 Driver IIS 5.1 です。 ソースは Sub btnUpdate_Click(sender As Object, e As EventArgs) Dim CommandText As String = "UPDATE xxx SET xxx=?, xxx=?, xxx=?, xxx=? where xxx=?" Dim myConnection As New OdbcConnection(DBConnectString) Dim myCommand As New OdbcCommand(CommandText, MyConnection) Dim i As Integer If Page.IsValid = False Then lblError.Text = "入力データは有効ではありません" Exit Sub End If Dim dateValue As Date Try dateValue = Functions.StringToDate(valid_date.text) Catch lblError.Text = "日付データは有効ではありません" Exit Sub End Try myConnection.Open() myCommand.Parameters.Add(New OdbcParameter("", OdbcType.Varchar)).Value = xxxx myCommand.Parameters.Add(New OdbcParameter("", OdbcType.VarChar)).Value = xxxx myCommand.Parameters.Add(New OdbcParameter("", OdbcType.DateTime)).Value = xxxx myCommand.Parameters.Add(New OdbcParameter("", OdbcType.Text)).Value = xxxx myCommand.Parameters.Add(New OdbcParameter("", OdbcType.Int)).Value = xxxx Try i = myCommand.ExecuteNonQuery() Finally myConnection.close() End Try If Not i = 1 Then lblError.Text = "データを更新できません" Exit Sub End If Response.Redirect(FinishURL & page_id.text) End Sub こんな感じです。 ボタンを押したら、更新する仕様になっています。 エラー何ですけど、 i = myCommand.ExecuteNonQuery() の部分でNullReferenceExceptionが出ます。 しかも、毎回ではなく一日に一回くらいのペースで不定期に出るんです。 誰かわかりましたらご鞭撻のほどよろしくお願いします。 | ||||
|
投稿日時: 2005-11-18 16:51
myCommand が Null に... 考えられないですね。 トレース ログはないのでしょうか? Catch 句を追加して例外の詳細をゲットしましょう。 詳細を見れば、自己解決できるかもしれませんね。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-11-18 16:57
お返事ありがとうございます。
PageのディレクティブにTrace="True"を追加して、 Try Trace.Write("myCommand",myCommand.CommandText) i = myCommand.ExecuteNonQuery() Finally myConnection.close() End Try のようにトレースをしてみたのですが。 バグが出たときにもセレクト文は表記されました。 変なトレースの仕方ですみません; ODBCのトレースもしようとして起動させて、 バグを出そうとしても出なくなってしまいます。 | ||||
|
投稿日時: 2005-11-18 17:20
MySQL Bugsは見てみた?現象として近いのは「MySQL Bugs: #11052: Attempting to INSERT null values into nullable columns => exception, crash」辺りかな。もし該当するBUGがなければ、レポートしよう。正常に動いているなら、NullReferenceExceptionはあり得ないと思う。
ちなみにODBC.NETを使わずに、MySQL Connector/Netを使うのが良いと思う。 [ メッセージ編集済み 編集者: 甕星 編集日時 2005-11-18 17:21 ] | ||||
|
投稿日時: 2005-11-18 17:39
お返事ありがとうございます、甕星さん。
確認してみます。 |
1