2010-09-13 3 views
-2

Можно создать дубликат:
Datagridview doesnt work!Datagridview не работает!

Я написал код, чтобы показать записи в DataGridView, но он ничего не показывает. Я пытался отладить &, когда он шаг в GetData функций следующих коды

 Catch ex As Exception 
     returnData = Nothing 
     If connection.State = ConnectionState.Open Then 
      connection.Close() 
     End If 

становится серым & он показывает знак ошибки. Когда я нажимаю на него указатель мыши, он показывает сообщение. В нем говорится: «Невозможно открыть СУБП СУБД, запрошенный логином. Ошибка входа в систему. Ошибка входа для пользователя« MY-PC \ James ». Пожалуйста, проверьте мой код & Помогите мне избавиться от этой проблемы & Не забудьте добавить пример с ответом.

Imports System.Data.SqlClient 

Public Class Form34 
Private Const ConnectionString As String = "Server=.\SQLEXPRESS;" & _ 
"Database=SUIMT;Trusted_Connection=True" 

Public Function GetData() As DataTable 
    Dim SelectQry = "Select row_num, stu_id, tot_amou, paid, du, aoins, due, dt From monthly_instal where stu_id = '" & cmbdmiidn.Text & "' AND dt = '" & cmbdmidt.Text & "'" 
    Dim connection As New SqlConnection(ConnectionString) 
    Dim returnData As New DataTable("monthly_instal") 
    Try 
     connection.Open() 
     Dim command As New SqlCommand(SelectQry, connection) 
     Dim adapter = New SqlDataAdapter(command) 
     adapter.Fill(returnData) 
     con.Close() 
    Catch ex As Exception 
     returnData = Nothing 
     If connection.State = ConnectionState.Open Then 
      connection.Close() 
     End If 
    End Try 
    Return returnData 
End Function 

Private Sub Form34_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load 
    cmbdmidt.Items.Clear() 
    cmbdmidt.Text = "DATE" 
    cmbdmiidn.Items.Clear() 
    cmbdmiidn.Text = "ID NUMBER" 
    txtdmirn.Text = "ROW NUMBER" 
    con = New ADODB.Connection 
    con.Open("Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=SUIMT") 
    rst = New ADODB.Recordset 
    With rst 
     .Open("Select * From monthly_instal", con, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockReadOnly) 
     If .BOF = False Then 
      .MoveFirst() 
      While .EOF = False 
       If Not cmbdmidt.Items.Contains(.Fields("dt").Value) Then 
        cmbdmidt.Items.Add(.Fields("dt").Value) 
       End If 
       .MoveNext() 
      End While 
     End If 
     .Close() 
    End With 
    rst = New ADODB.Recordset 
    With rst 
     .Open("Select * From monthly_instal", con, ADODB.CursorTypeEnum.adOpenStatic, ADODB.LockTypeEnum.adLockReadOnly) 
     If .BOF = False Then 
      .MoveFirst() 
      While .EOF = False 
       If Not cmbdmiidn.Items.Contains(.Fields("stu_id").Value) Then 
        cmbdmiidn.Items.Add(.Fields("stu_id").Value) 
       End If 
       .MoveNext() 
      End While 
     End If 
     .Close() 
    End With 
    Me.CREATEUSERToolStripMenuItem.Enabled = False 
    Me.DELETEUSERToolStripMenuItem.Enabled = False 
    Me.CHANGEPASSWORDToolStripMenuItem.Enabled = False 
    Me.ASSIGNPERMISSIONToolStripMenuItem.Enabled = False 
    Me.SHOWALLToolStripMenuItem.Enabled = False 
    Me.CREATEACADEMICYEARToolStripMenuItem.Enabled = False 
    Me.DELETEACADEMICYEARToolStripMenuItem.Enabled = False 
    Me.CREATESESSIONToolStripMenuItem.Enabled = False 
    Me.DELETESESSIONToolStripMenuItem.Enabled = False 
    Me.CREATEDEPARTMENTToolStripMenuItem.Enabled = False 
    Me.DELETEDEPARTMENTToolStripMenuItem.Enabled = False 
    Me.CREATEEXAMTYPEToolStripMenuItem.Enabled = False 
    Me.DELETEEXAMTYPEToolStripMenuItem.Enabled = False 
    Me.CREATESUBJECTToolStripMenuItem.Enabled = False 
    Me.DELETESUBJECTToolStripMenuItem.Enabled = False 
    Me.ADMISSIONToolStripMenuItem.Enabled = False 
    Me.DELETEADMISSIONToolStripMenuItem.Enabled = False 
    Me.ADMISSIONREPORTToolStripMenuItem.Enabled = False 
    Me.STUDENTINFORMATIONToolStripMenuItem.Enabled = False 
    Me.DELETESTUDENTINFORMATIONToolStripMenuItem.Enabled = False 
    Me.SEARCHSTUDENTINFORMATIONToolStripMenuItem.Enabled = False 
    Me.STUDENTINFORMATIONREPORTToolStripMenuItem.Enabled = False 
    Me.CREATESTUDENTRESULTToolStripMenuItem.Enabled = False 
    Me.DELETESTUDENTRESULTToolStripMenuItem.Enabled = False 
    Me.STUDENTRESULTREPORTToolStripMenuItem.Enabled = False 
    Me.RESULTSHEETREPORTToolStripMenuItem.Enabled = False 
    Me.CREATEMONTHLYINSTALLMENTToolStripMenuItem.Enabled = False 
    Me.DELETEMONTHLYINSTALLMENTToolStripMenuItem.Enabled = False 
    Me.MONTHLYINSTALLMENTREPORTToolStripMenuItem.Enabled = False 
    Me.CREATEBALANCESHEETToolStripMenuItem.Enabled = False 
    Me.DELETEBALANCESHEETToolStripMenuItem.Enabled = False 
    Me.BALANCESHEETREPORTToolStripMenuItem.Enabled = False 
    Me.ABOUTTHISPROGRAMToolStripMenuItem.Enabled = False 
    Me.EXIToolStripMenuItem.Enabled = False 
End Sub 

Private Sub cmbdmidt_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles cmbdmidt.Leave 
    dg1.DataSource = Nothing 
    dg1.DataSource = GetData() 


End Sub 

Private Sub butdmiclo_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles butdmiclo.Click 
    speak34.Speak("Delete monthly installment window has been closed successfully") 
    Me.Close() 
End Sub 
End Class 
+1

Я не хочу быть оскорбительным ... но сообщения об ошибке «Войти не удалось» звучит как очень хороший ключ ко мне , – Bobby

+4

@ Джеймс, я не думаю, что ты собираешься помочь здесь, если ты говоришь с такими людьми. – Ben

+0

И это почти дубликат: [Datagridview не работает!] (Http://stackoverflow.com/questions/3696171/datagridview-doesnt-work) – GenericTypeTea

ответ

0

Так, кажется, из вашего поста, вы можете подключить во время выполнения метода загрузки, я бы сказал, что изменение постоянной ConnectionString в верхней части должно быть первое место, чтобы посмотреть.

Исключение, которое вы получаете, указывает на то, что что-то не так с базой данных, сетью или тем, как вы пытаетесь подключиться. Мой опыт в том, что сеть и база данных обычно не являются лучшим местом для поиска проблем при работе с новым кодом.

+0

Пожалуйста, проверьте его (http://stackoverflow.com/questions/3700650/datagridview-doesnt-work-in-vb-netit-shows-nothing), где я подробно написал о своей проблеме. – James

+0

Он показывает «Невозможно открыть базу данных SUIMT, запрошенную при входе в систему. Ошибка входа в систему. Ошибка входа для пользователя« MY-PC \ James ». – James

0

Похоже, вы пытаетесь использовать сетевые учетные данные для подключения к базе данных, но вам не хватает части в строке подключения.

Try изменения:

Private Const ConnectionString As String = "Server=.\SQLEXPRESS;" & _ 
"Database=SUIMT;Trusted_Connection=True" 

Для этого:

Private Const ConnectionString As String = "Server=.\SQLEXPRESS;" & _ 
"Database=SUIMT;Trusted_Connection=True;Integrated Security=SSPI;" 
+0

Я пробовал, но он не работает. Пожалуйста, проверьте его (http://stackoverflow.com/questions/3700650/datagridview-doesnt-work-in-vb-netit-shows-nothing), где я подробно написал о своей проблеме. – James

+0

Он показывает: «Невозможно открыть базу данных SUIMT, запрошенную при входе в систему. Ошибка входа в систему. Ошибка входа для пользователя« MY-PC \ James ». – James

+0

Имеет ли пользователь MY-PC \ James на сервере базы данных? –

Смежные вопросы