当前位置:编程学习 > C#/ASP.NET >>

特急 请求各位高手 帮帮忙

异常 nullreferenceexception    オブジェクト参照がオブジェクト インスタンスに設定されていません。
下边是小弟的代码
'----------------------------------------------------------------------------------------------
    ' 入庫受付準備更新処理
    '   引数①:宛名データ格納ハッシュテーブル(IN)
    '   引数②:エラー発生時のメッセージ(OUT)
    '   戻り値:True(正常終了)/False(エラー発生)
    '----------------------------------------------------------------------------------------------
    Public Function UpdateDB_Nyuuko(ByRef OleTran As OleDb.OleDbTransaction, ByRef strDspMsg As String) As Boolean
        Dim OleCmd As OleDb.OleDbCommand = Nothing
        Dim strSQL As String = String.Empty
        Dim i As Integer = 0

        Try
            Me.OleDbConn.Open()

            'トランザクション開始
            OleTran = OleDbConn.BeginTransaction()

            '更新処理
            OleCmd = New OleDb.OleDbCommand("", OleDbConn, OleTran)
            '更新用SQL文の編集
            strSQL &= "INSERT INTO " & C_DB_TABLEUSER & "T_FNYJNB ("
  注意:这里出的异常
             For i = 0 To dttNyukoJunbi.Columns.Count - 1
                If i > 0 Then
                    strSQL &= ", "
                End If
                strSQL &= "[" & dttNyukoJunbi.Columns(i).ColumnName & "]"
            Next i
            strSQL &= ") VALUES ("
            For i = 0 To dttNyukoJunbi.Columns.Count - 1
                If i > 0 Then
                    strSQL &= ", "
                End If
                If dttNyukoJunbi.Columns(i).Caption = "nvarchar" Then
                    If IsDBNull(dtrNyukoRec.Item(i)) Then
                        dtrNyukoRec.Item(i) = String.Empty
                    End If
                    strSQL &= "'" & CStr(dtrNyukoRec.Item(i)) & "'"
                Else
                    If IsDBNull(dtrNyukoRec.Item(i)) OrElse CStr(dtrNyukoRec.Item(i)) = String.Empty Then
                        dtrNyukoRec.Item(i) = "0"
                    End If
                    strSQL &= CStr(dtrNyukoRec.Item(i))
                End If
            Next i
            strSQL &= ")"

            '更新処理
            OleCmd = New OleDb.OleDbCommand("", OleDbConn2, OleTran)
            OleCmd.CommandText = strSQL
            If OleCmd.ExecuteNonQuery() >= 1 Then
                Return True
            Else
                strDspMsg = "DB更新(入庫受付準備テーブルの更新1)に失敗しました。"
                Return False
            End If

        Catch e As OleDb.OleDbException
            If strDspMsg = String.Empty Then
                strDspMsg = "DB更新(入庫受付準備テーブルの更新2)に失敗しました。"
                For i = 0 To e.Errors.Count - 1
                    strDspMsg &= e.ToString() & vbCrLf
                Next i
            End If
        Catch e As Exception
            If strDspMsg = String.Empty Then
                strDspMsg = "DB更新(入庫受付準備テーブルの更新3)に失敗しました:" & vbCrLf & e.ToString
            End If
            Throw e
        Finally
            If Not (OleCmd Is Nothing) Then
                OleCmd.Dispose()
            End If
        End Try
    End Function --------------------编程问答--------------------  strSQL &= "INSERT INTO " & C_DB_TABLEUSER & "T_FNYJNB (" 
改成
 strSQL = "INSERT INTO " & C_DB_TABLEUSER & "T_FNYJNB (" 

或者

 Dim strSQL As String = String.Empty 
改成
 Dim strSQL As String = "" 
补充:.NET技术 ,  VB.NET
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,