Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

SQL-Server Connection & DataGridView Ausgabe ???

Empfohlene Antworten

Veröffentlicht

Ich möchte eine Tabelle aus einer MS SQL Datenbank namens "Personen" in einem DataGridView ausgeben lassen.

Meine Vorgehensweise lautet wie folgt:

        'Connection

        Dim Con As System.Data.Odbc.OdbcConnection = New Odbc.OdbcConnection _

        ("Data Source=K47;Initial Catalog=Hotel_Alex;Integrated Security=True")


        'Adapter

        Dim Ada As System.Data.Odbc.OdbcDataAdapter = New Odbc.OdbcDataAdapter _

        ("SELECT * FROM Personen", Con)


        'DataSet

        Dim DaSe As New DataSet


        Con.Open()


        Ada.Fill(DaSe, "Persons")


        Con.Close()


        'DataTable

        Dim DaTa As DataTable = DaSe.Tables("Persons")


        DataGridView1.DataSource = DaTa

Kann mir jemand weiterhelfen?

Ja.

* Nimm keine Odbc Verbindung sondern eine SQLConnection.

* con open und Close kannst du weglassen

* Die Zeile mit der DataTable kannst du weglassen

* DataGridView1.DataSource = DaSe

Dann müsste dir das Grid schon das DataSet anzeigen. Über die DataMember Property kannst du dann auch die Table einschränken, also z.B. auf "Personen" festlegen. Alternativ kannst du auch eine DataTable anstelle des Datasets befüllen und binden.

Ich hab's jetzt mal folgendermaßen abgeändert, leider ohne Erfolg.

'Connection

        Dim Con As System.Data.SqlClient.SqlConnection = New SqlClient.SqlConnection _

        ("Data Source=K47;Initial Catalog=Hotel_Alex;Integrated Security=True")


        'Adapter

        Dim Ada As System.Data.SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter _

        ("SELECT * FROM Personen", Con)


        'DataSet

        Dim DaSe As New DataSet


        Ada.Fill(DaSe, "Persons")


        'DataTable

        'Dim DaTa As DataTable = DaSe.Tables("Persons")


        DataGridView1.DataSource = DaSe

Es erfolgt keine Ausgabe im DataGridView. Das GridView bleibt völlig leer.

Schau mal mit einem Debugger ob die Daten ins Dataset geladen werden. Das kannst du unter Visual Studio mit der kleinen Lupe machen die erscheint wenn du einen Breakpoint setzt und über das Dataset fährst.

hat sich schon erledigt!!

gell gooner :P: :D

Naja, zumindest bei Dir. In meinem Quellcode ist noch alles beim Alten! :cool:

Ich habe das ganze jetzt mit einem Button gestartet. Jetzt funktioniert es. Hat jemand eine Erklärung?

Der Code hat sich zumindest nicht verändert:

        'Connection

        Dim Con As System.Data.SqlClient.SqlConnection = New SqlClient.SqlConnection _

        ("Data Source=K47;Initial Catalog=Hotel_Alex;Integrated Security=True")


        'Adapter

        Dim Ada As System.Data.SqlClient.SqlDataAdapter = New SqlClient.SqlDataAdapter _

        ("Select Personen.Vorname, Zimmer.Zimmernr From Personen, Zimmer", Con)


        'DataSet

        Dim DaSe As New DataSet


        Ada.Fill(DaSe, "Persons")


        'DataTable 1

        Dim DaTa As DataTable = DaSe.Tables("Persons")


        'DataGridView

        DataGridView1.DataSource = DaTa

Ich steig gerade nur noch bedingt durch, der Code hat sich ja doch verändert, du verwendest jetzt die SQL Connection. Ich hatte auch in Erinnerung das du geschrieben hast der Fehler läge am Connection String, der hat sich aber gar nicht verändert. Kannst du uns mal aufklären?

Wenn du keine weiteren Tabellen laden willst kannst du auch direkt die DataTable verwenden und brauchst kein Dataset. Deine SQL Abfrage macht ohne Join auch nur bedingt Sinn.

Gut wäre es bei Anfragen generell zu schreiben WAS genau nicht funktioniert.

Zur konkreten Frage: Du erstellst eine WinForms Applikation? Der abgedruckte Code funktioniert als EventHandler eines Buttons? An welcher Stelle funktioniert er denn nicht und was funktioniert genau nicht?

Ich hatte auch in Erinnerung das du geschrieben hast der Fehler läge am Connection String, der hat sich aber gar nicht verändert. Kannst du uns mal aufklären?

Das habe wohl ich gesagt nicht der gooner. Nicht nur grob überfliegen bitte.

Zur konkreten Frage: Du erstellst eine WinForms Applikation? Der abgedruckte Code funktioniert als EventHandler eines Buttons? An welcher Stelle funktioniert er denn nicht und was funktioniert genau nicht?

Wenn er die den ganzen ablauf ins form_load event reinschreibt funzt es nicht.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.