2010-04-14 4 views
0

다음 코드를 도움을 줄 수있는 사람이 있습니까?개체 참조가 개체의 인스턴스로 설정되어 있지 않습니다.

데이터베이스 열에서 데이터 그램 뷰로 데이터를 가져 오려고합니다 ... 여기에서 오류가 발생합니다. "Dim sql_1 As String ="SELECT * FROM item_id = ' "+ DataGridView_stockout.CurrentCell. Value.ToString() + " '" "

Private Sub DataGridView_stockout_CellMouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellMouseEventArgs) Handles DataGridView_stockout.CellMouseClick 
    Dim i As Integer = Stock_checkDataSet1.Tables(0).Rows.Count > 0 
    Dim thiscur_stok As New System.Data.SqlClient.SqlConnection("Data Source=MBTHQ\SQLEXPRESS;Initial Catalog=stock_check;Integrated Security=True") 
    ' Sql Query 

    Dim sql_1 As String = "SELECT * FROM item where item_id = '" + DataGridView_stockout.CurrentCell.Value.ToString() + "'" 
    ' Create Data Adapter 
    Dim da_1 As New SqlDataAdapter(sql_1, thiscur_stok) 
    ' Fill Dataset and Get Data Table 
    da_1.Fill(Stock_checkDataSet1, "item") 
    Dim dt_1 As DataTable = Stock_checkDataSet1.Tables("item") 
    If i >= DataGridView_stockout.Rows.Count Then 
     'MessageBox.Show("Sorry, DataGridView_stockout doesn't any row at index " & i.ToString()) 
     Exit Sub 
    End If 
    If 1 >= Stock_checkDataSet1.Tables.Count Then 
     'MessageBox.Show("Sorry, Stock_checkDataSet1 doesn't any table at index 1") 
     Exit Sub 
    End If 
    If i >= Stock_checkDataSet1.Tables(1).Rows.Count Then 
     'MessageBox.Show("Sorry, Stock_checkDataSet1.Tables(1) doesn't any row at index " & i.ToString()) 
     Exit Sub 
    End If 
    If Not Stock_checkDataSet1.Tables(1).Columns.Contains("os") Then 
     'MessageBox.Show("Sorry, Stock_checkDataSet1.Tables(1) doesn't any column named 'os'") 
     Exit Sub 
    End If 

    'DataGridView_stockout.Item("cs_stockout", i).Value = Stock_checkDataSet1.Tables(0).Rows(i).Item("os") 
    Dim ab As String = Stock_checkDataSet1.Tables(0).Rows(i)(0).ToString() 
End Sub 

내가 잘못된거야 위치를 알 "개체 참조가 개체의 인스턴스로 설정되지 않았습니다 "나는 해달라고 말하는 오류가 계속. 정말 감사드립니다!

+0

가능한 복제본 [NullReferenceException은 무엇이며 어떻게 수정합니까?] (http://stackoverflow.com/questions/4660142/what-is-a-nullreferenceexception-and-how-do-i-fix- 그것) – stakx

답변

0

디버거를 시작하고 break on 예외를 켜면 예외가 발생한 지점을 정확하게 볼 수 있습니다.

+0

글쎄, 디버거를 사용하여 시도했지만, 정확히 어디로 잘못 갈 수 없습니다. 내가 원하는 것은 내가 curent stock column을 클릭하면 항목 ID 당 주식을 넣어야한다는 것입니다. 그리고 그것을 위해 내가 으로 SQL을 썼다 선택 * 상품 ID는 = 항목에서 ' "+ datagridview.currentcell.value +"' 하지만 어떻게를 얻기 위해 쿼리를 실행하기 위해 현재 주식 열에 클릭에 참조 할 수 있습니다 itemid 열에 입력 한 itemid 당 데이터베이스의 값. 정말 감사드립니다. – MBTHQ

1
Stock_checkDataSet1.Tables(1) 

0 개의 색인을 사용해야한다고 생각합니다.

+0

응답 해 주셔서 감사합니다. 그러나 나는 어디에서 변화를 만들어야 하느냐? – MBTHQ

+0

@MBTHQ : 1 대신 0을 사용하십시오. – leppie

관련 문제