.
Anmeldung | Registrieren | Hilfe
in Suchen

warum ist meine Data-Table leer?

Letzter Beitrag 23. Jan 2017 17:26 von dh1sbg. 6 Antworten.
Seite 1 von 1 (7 Treffer)
Beiträge sortieren: Zurück Weiter
  • 23. Jan 2017 15:51

    • dh1sbg
    • Top 150 Mitwirkender
    • Registriert am 21. Apr 2010
    • Beiträge 8
    • Punkte 95

    warum ist meine Data-Table leer?

    Hallo, ich versuche mich mit dem Zugriff auf eine ODBC Tabelle und dem Zugriff auf eine MySQL Datenbank. Die Tabelle tab_sem_holidays existiert und hat Inhalte. Ziemlich weit unten sagt mir aber VB.NET, dass die myTable Leer sei (NULL). Was mache ich hier falsch? Liebe Grüße Beruno
    Imports System.Data.Odbc
    Public Class frmUpdateDatenbank
        Private BindingSource As BindingSource
        Private DataAdaperter As Odbc.OdbcDataAdapter
        Private Sub frmUpdateDatenbank_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Me.DataGridView1.DataSource = BindingSource
            Dim sqlString As String = "Select * from tbl_sem_holidays"
            GetData(sqlString)
        End Sub
        Sub GetData(ByVal SqlString As String)
            Try
                Dim conn As New OdbcConnection("DSN=mis") 'Neuen DataAdapter erstellen 
                Me.DataAdaperter = New OdbcDataAdapter(SqlString, conn) ' Einen Command Builder erstellen, um die Befehle Insert, Update und Delete ' zu erzeugen, welche auf der SQL Anweisung basieren ' Diese werden verwendet, um die Datenbank zu verändern 
                Dim CommandBuilder As New OdbcCommandBuilder(Me.DataAdaperter) ' Eine neue Data Table erzeugen, und an die Binding-Source binden 
                Dim mytable As New DataTable
                Me.DataAdaperter.Fill(mytable) ' Hier tritt ein Fehler auf: MyTable sei leer! '=============> 
                Me.BindingSource.DataSource = mytable
            Catch ex As Exception
                MsgBox(ex.Message)
            End Try
        End Sub
    End Class
    • IP-Adresse ist Registriert
  • 23. Jan 2017 16:03 Antwort zu

    • Lars Schmitt
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 22. Jan 2008
    • Witten
    • Beiträge 381
    • Punkte 6.210
    • Moderator

    warum ist meine Data-Table leer?

    hallo dh1sgb,

    wie würde denn der SQL Command aussehen? (nicht das die Methode auch an einer anderen stelle aufgerufen wird)

    und wenn du diesen Command direkt in der Datenbank z.B. über phpMyAdmin ausfühst, was bekommst du dann

    Viele Grüße
    Lars
    • IP-Adresse ist Registriert
  • 23. Jan 2017 16:35 Antwort zu

    • dh1sbg
    • Top 150 Mitwirkender
    • Registriert am 21. Apr 2010
    • Beiträge 8
    • Punkte 95

    warum ist meine Data-Table leer?

    Hallo
    der String scheint korrekt zu sein.
    "Select * FROM tbl_sem_holidays"
    
    ändere ich den String ab, z. B. "Select * FROM tbl_irgendwas"
    heisst es, dass die Tabelle nicht existiert.
    
    In phpmyadmin kommt dann die Tabelle mit Inhalten
    
    es kommt die Fehlermeldung: Der Objektverweis wurde auf keine Objektinstanz festgelegt.
    
    
    Lasse ich das Try-Catch weg, dann kommt  bei
    
    Me.BindingSource.DataSource = myTable: mit rotem Balken bei myTable
    
    Ein Ausnahmefehler des Typs "System.NullReferenceException" ist in MIS_Frontend.exe aufgetreten.
    
    Grüsse
    Bruno
    
    • IP-Adresse ist Registriert
  • 23. Jan 2017 16:45 Antwort zu

    • Lars Schmitt
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 22. Jan 2008
    • Witten
    • Beiträge 381
    • Punkte 6.210
    • Moderator

    warum ist meine Data-Table leer?

    Nimm mal den CommandBuilder raus und versuche es erneut

    Viele Grüße
    • IP-Adresse ist Registriert
  • 23. Jan 2017 16:48 Antwort zu

    • dh1sbg
    • Top 150 Mitwirkender
    • Registriert am 21. Apr 2010
    • Beiträge 8
    • Punkte 95

    warum ist meine Data-Table leer?

    Hallo Lars, daran scheint es nicht zu liegen - der selbe Fehler erscheint
    • IP-Adresse ist Registriert
  • 23. Jan 2017 17:00 Antwort zu

    • Lars Schmitt
    • Top 10 Mitwirkender
      Männlich
    • Registriert am 22. Jan 2008
    • Witten
    • Beiträge 381
    • Punkte 6.210
    • Moderator

    warum ist meine Data-Table leer?

    eigentlich scheint der Code richtig zu sein, in manchen Code beispielen existiert zwar noch eine con.Open()
    jedoch wird dies bei DataAdapter eigentlich nicht benötigt

    stimmt vieleicht mit der ODBC datenquelle etwas nicht ?

    versuch es doch mal, mit den MySQL Connector

    Viele Grüße
    Lars
    • IP-Adresse ist Registriert
  • 23. Jan 2017 17:26 Antwort zu

    • dh1sbg
    • Top 150 Mitwirkender
    • Registriert am 21. Apr 2010
    • Beiträge 8
    • Punkte 95

    warum ist meine Data-Table leer?

    Lösung:
        Private BindingSource1 As New BindingSource
        Private DataAdaperter1 As New Odbc.OdbcDataAdapter
    
    
    Also 2 mal NEW (zu Beginn)
    Sicherheitshalber BindingSource zu Bindingsource1 umbenannt
    
    • IP-Adresse ist Registriert
Seite 1 von 1 (7 Treffer)

Regeln | Impressum