Verbinden mit SQL Server-Datenbank und füllen DataGridView

Zu dieser Zeit werden wir sehen, sehr Sensillen und mit sehr wenig Code, können wir in etablieren Visual Basic. NET Verbindung mit einer SQL-Server, in meinem Fall SQL Server Express 2005, dann auf Daten von einem erholen Tabellen, um ein DataGridView mit ihnen zu füllen.

Das erste, was zu tun ist, importiert zwei Namespaces wie nachstehend gezeigt:

 Imports System.Data
 Imports System.Data.SqlClient

Für dieses Beispiel werden wir ein Formular mit einer Schaltfläche (Button1) und einem DataGridView (DataGridView1) zu verwenden. Im Click-Ereignis von Button1 eine Kopie der folgende Code zu modifizieren und einige Parameter (Name oder IP des Servers, der Name des Datenbank-und Tabellennamen in der Anweisung SELECT ), so dass alles gut funktioniert.

 Dim cnn As New SqlConnection ("Data Source = MyServidor; Initial Catalog = MyDatabase; Integrated Security = SSPI;")

 Dim da As New SqlDataAdapter ("SELECT * FROM Products", CNN)
 Dim ds As New DataSet

 da.Fill (ds)

 DataGridView1.DataSource = ds.Tables (0)

Na ja, eigentlich nicht viel zu erklären ... Sie schaffen eine Verbindung (CNN), dann eine DataAdapter (DA), die als Parameter die Anweisung, um Daten (abrufen SELECT ) und die zu verwendende Verbindung (CNN). Wenn Sie auswählen möchten nur bestimmte Datensätze müssen eine Bedingung hinzuzufügen WHERE die SELECT-Anweisung.

In den folgenden Zeilen verlassen wir einige kurze Definitionen im Falle einer von euch benötigt wurden und um mehr über die verschiedenen Optionen zum Erstellen einer SQL Server 2005-Anschluss lasse ich auch den folgenden Link erfahren: http://www.connectionstrings.com/sql -server-2005 .

DataAdapter

Stellt eine Gruppe von SQL-Befehlen und eine Datenbankverbindung dar, die zum Auffüllen des DataSet und aktualisieren Sie die Datenquelle verwendet werden.
DataAdapter dient als Brücke zwischen dem DataSet und einer Datenquelle für das Abrufen und Speichern von Daten. Um als Brücke fungieren, DataAdapter füllen Methode weist, Ändern der Daten des DataSet in der Datenquelle übereinstimmen, und ordnet die Update-Methode, die die Daten in der Datenquelle ändert, um mit denen zusammen DataSet.

DataSet

Stellt einen Speicher-Cache von Daten. Es ist eine grundlegende Komponente der ADO.NET-Architektur. DataSet besteht aus einer Sammlung von DataTable-Objekten.

DataTable

Stellt eine Datentabelle in dem Speicher.
DataTable ist eine zentrale Aufgabe der ADO.NET-Bibliothek. Unter den Objekten, die DataTable und DataView verwenden DataSet enthalten.

Beim Zugriff auf DataTable-Objekte, müssen Sie bedenken, dass diese Groß-und Kleinschreibung sind bedingt. Zum Beispiel wird, wenn eine DataTable "mydatatable" und andere "Mydatatable", die Zeichenfolge, die für die Suche einen der Tische betrachtet werden Groß-und Kleinschreibung benannt ist. Allerdings, wenn es "mydatatable" aber kein "Mydatatable" gilt als der Suchbegriff ist nicht case sensitive. Ein DataSet kann zwei DataTable-Objekte, die die gleiche Eigenschaft TableName Wert und unterschiedliche Werte für die Namespace-Eigenschaft haben. <

38 Responses to "auf SQL Server-Datenbank her und füllen DataGridView"

  1. [...] In der früheren Post, viel Sensillen und mit sehr wenig Code, werden wir sehen, wie man mit verbinden [...]

    • Vaneagas Harvy sagt:

      Hallo, für Ihre Publikation Ich war tatsächlich sehr hilfreich, um die Verbindung ohne weitere Fehler zu erreichen danke Ihnen vielmals und ich hoffe, eines Tages um die Gunst bald zurückkehren

  2. [...] So schreiben das Beispiel der Verbindung mit SQL Server und Microsoft Access-Verbindung wurde mir klar, dass, obwohl das sind die zwei Arten von [...]

  3. [...] Zeigen Sie, wie können wir von Datensätzen in einem DataGridView filtern. Dieses Beispiel ist auf dieser Basis früher, aber der Unterschied ist, dass anstelle der Weitergabe als DataGridView an einem Tisch Datenquelle, Sie [...]

  4. Polledo Armando sagt:

    Hallo, ich habe eine preguta sehe ich die Methode, um die Daten im DataGridView neu zu laden sind efecivos, was nützt dann die Aktualisierung oder Änderung, die ESU nicht die Daten aktualisieren oder einfach erfrischt setzen dient und tut nichts, um verschiedene Wege versuchen, gelten aber nicht um zu dienen. Meine konkrete Frage lautet zum Servieren Sie das Update

    • Elisa sagt:

      Was ich tue, richtig ist ejemple Lesen von Daten aus einer SQL-Abfrage und sie füllen ein DataGridView. Aber wenn ich eine dieser Informationen zu ändern, ich mache einfach im Speicher. Diese Veränderungen sind nie in die Datenbank. Für sie Updatey verwenden müssen, es zu benutzen müsste, um das Update-Methode des SqlDataAdapter mit CommandBuilder erstellen. Ich schreibe einige Beispiel.

  5. Requejo Marco sagt:

    Ich bin auf einem Transportsystem arbeitet, und filtern Sie die Informationen nesecito Fahrer in einem Daten-Raster, das durch das Schreiben in einem Textfeld einen Namen und zur gleichen Zeit dieser Filter und auf dem Daten-Grid. Beispiel. Wenn Sie mit der Eingabe beginnen Sie im Textfeld das Wort Roger wird im Datagrid alle Namen mit r angezeigt.

  6. Carlos Cardozo sagt:

    Boss.

    eine Frage, wie bereits gesagt die Benutzer-und Pass? porq dabei eine Verbindung mit SQL als Gast.

    Grüße. -

  7. Dieses gut, sagt:

    Wie zeige ich mir, dass wenn ein Programm im FACT UNN Datenbank, wenn ein PERSONASTA Beispiel mit nur Platzieren Sie Ihre Spielplan Number

    • AlbertoJ sagt:

      Hallo,
      Du könntest ein Textfeld setzen, in dem Sie in der Anzahl der Personalausweis füllen sollte
      und die Abfrage:

      ("SELECT * FROM Employees WHERE cedula = '" + Me.txtcedula.Text + "'", CNN)
      Ich habe keine Hoffnung VB.net hier kein Fehler in der Syntax.
      txtcedula würde der Name Ihres Textbox sein
      Ein Gruß.

  8. Dieses gut, sagt:

    Ich bin neu in diesem

  9. David Marin sagte:

    Hey sorry für die Mühe, aber ich habe eine Frage und ich hoffe, jemand antwortet, weil es eher dringend ist, Habra als eine Möglichkeit, eine neue Tabelle mit den Daten zu füllen ich eine DataGridView, die mein DataGridView ist mit einem Tisch "x" gefüllt haben und dann füllte es mit der Tabelle "x", wie Daten auf meinem DataGridView Tabelle "x" gebe ich es an einen neuen Tisch "und". Kannst du das????????? zu helfen.

  10. Erwin sagt:

    Sehr guter Punkt

  11. Paulus sagt:

    Ich habe folgendes Problem, wenn ich die Eigenschaft des Rasters Datenquelle, dass ich den Datensatz zu laden mit Daten aus der Datenbank wie das obige Beispiel zu verwenden, was ich will, ist es nun, wie DataGrid-Spalten ändern Breite und solche Sachen, dann werde ich tat, war Spalten hinzufügen, um DataGrid, aber wenn ich jetzt kompilieren und ausführen das Programm und nutzen Sie die DataGrid-Spalten hinzugefügt, dass ich sind da, aber leer!
    und abgesehen von diesen Spalten, die ich aufgenommen sind aufgrund der Datenmenge, jetzt will ich zu tun ist, q q Ich fügte hinzu, Spalten sind leer, mit den Daten der Spalten, die ich durch diese Spalten hinzugefügt Datenquelle und gehen ... aber wie?

    • Elisa sagt:

      Es ist ein recht häufiges Problem, aber nie erklärt, wie man es beheben. Die Wahrheit ist, das verdient einen vollen Beitrag, um zu zeigen wie es funktioniert, aber wie du kurz erklären, was Sie tun können:
      A. - Erstellen Sie ein Objekt mit allen Feldern der Tabelle
      2 -. Fügen Sie eine neue Datenquelle mit dem vorherigen Objekt
      3 -. Im DataGridView wählen Sie die Datenquelle als Datenquelle. Diese Queara ein Objekt Datenbindung
      4 -. Bearbeiten Sie die Spalten des DataGridView zu verbergen, anzeigen und formatieren Sie die Spalten, wie Sie wollen
      5 -. Von der Code füllt das DataSource-Objekt Datenbindung

      Nun, ich hoffe nicht allzu viel komplizierter mit diesem. Luck.

  12. Gina sagt:

    Öffnen Weg, um Informationen aus einer Datenbank erhalten sie während der Anzeige wie eine Fahrkarte.???

    Ich bin auf diese ab, aber ich finde

  13. Jose Cruz sagt:

    Vielen Dank für Ihre auyda hat mir gute Dienste.
    Ich hoffe es folgen compartinedo Ihr Wissen an andere puedamos toarlos.

  14. legna sagt:

    Hallo ich kann eine untergeordnete Formular in Visual Basic, zum Beispiel ich eine Taste drücken, und zeige mir eine andere Form

  15. Massey sagt:

    Disculpaa ..

    Hinzufügen, Ändern und Löschen von Datensätzen aus der gleichen DataGridView

    Mit Datensatz, so dass, wenn Sie hinzufügen, ändern oder löschen, auch aus der DB entfernt werden.

    Gracas von antemanoo!

  16. Ricardo sagt:

    Leider bin ich mit Visual 2008, die Verbindungszeichenfolge ich tue es mit ADODB, die die Bibliothek importiert "Importiert ADODB" die Verbindung in Ordnung ist, aber wenn ich ein DataGridView füllen funktioniert nicht, wenn es nicht auch andere Dinge, AYUDAAAA bitte!

  17. Cristian sagt:

    Ich bin mit VB 2010 arbeiten, und wenn ich möchte das DataGridView mit der Abfrage Beispiel zu zeigen. "SELECT Spalte1 als" Name1, Spalte2 als "Name2" vom Tisch "
    die datagridview.datasource = dataset.table (0)
    Das DataGridView zeigt nicht die Auswahl und zeigt mir die Tabelle rohe Knochen, ist die gesamte Tabelle ohne Aliasnamen, wie ich zu sehen passieren.
    Wie dieses Problem lösen

  18. VJUNIOR sagt:

    FREUND DANK DIESER SCHRITT KANN LERNEN ... Nichts wurde wirklich nicht ZERO ... DANKE ........

  19. Imelda sagt:

    hey danke!

  20. Luis sagt:

    Große Post, gut, was Sie tun. Halten Sie es weiter! .... Na ja, jetzt ist die Frage.
    Ich habe eine DataGridView genannt dgv_Aclaraciones, und ich habe 3 Spalten standardmäßig (das erste ist vom Typ Checkbox, die zweite ein Textfeld und die dritte ist der Typ-Taste), sowie, auf der anderen Seite in meiner Datenbank Ich habe eine Tabelle " Klärungen "mit 2 Feldern, von denen nur eines interessierte mich, weil es das ist, was ich im DataGridView zu zeigen.

    Ich habe versucht, mit der Datenquelle zu tun, sondern was sie tut, ist weitere Spalten hinzufügen, um der DataGridView. Es wäre toll, wenn Du die Antwort hast, aber ich werde auch weiterhin untersuchen, danke.

    Ausgezeichnete Post! (Schon wieder! ... XD)

  21. Alexander Hernandez sagt:

    gut
    würde jemand bitte sagen Sie mir, wie man aus einer SQL DB beiden Felder wie Namen und andere Namen, texboxt als Abfrage zu erholen.
    VB10 Einsatz ist dringend danke Ihnen für Ihre Zusammenarbeit

  22. Bugbear sagte:

    Hallo, danke für Ihre Website, ich habe eine Frage, ob es zwei Tabellen, die ich will, um eine einzelne DataGrid octener kombinieren Ich habe eine Abfrage, aber zeige mir nicht die Daten, was ich tun kann sind. Dank

  23. cherry32 sagte:

    Hallo
    Ich folgte dem Beispiel. Es füllt den dataridview, sagt "nicht kontrolliert System.IndexOutOfRangeException
    Message = kann nicht gefunden Tisch 0 ".
    Was passiert sein könnte? Mein Datensatz leer ist?

    • Elisa sagt:

      das Problem kann das sein, Ihre daaset enthalten keine Tabelle ...
      Überprüfen Sie den Code, und überprüfen Sie, dass Sie sich nicht verwirren die variablen DataAdapter (DA) von der DataSet (ds) oder eine andere Tippfehler.
      Unter Berufung auf die DataAdapter-Fill-Methode füllt das Dataset ds mit dem Ergebnis-Tabelle des SQL-Abfrage.
      Es ist wirklich sehr wenig Code und sehr einfach zu verstehen. Überprüfen Sie diese und damit es funktioniert, wenn Sie nicht sperren und neu beginnen. Dass es funktioniert. ;)

  24. omar_judai sagt:

    Hallo, wie geht!
    Der Grund für meinen Besuch ist zu sehen, ob ich helfen kann
    q ist der Grund, warum ich so ein Programm habe in VB 2010 und SQL Server 2008
    alles war in Ordnung, bis ich meine Anwendung auf einem anderen PC testen wollte und ich bekam Fehler, wenn wir die Daten speichern wollen, kam ich

    Kann nicht geöffnet werden die physische Datei "C: \ Users \ Omar \ Documents \ Visual Studio 2010 \ Projects \ Projektkosten \ Projektkosten \ bin \ Debug \ Database1.mdf". Betriebssystemfehler 32: "32 (nicht Text für diesen Fehler abrufen. Grund: 15.105)".
    Kann nicht geöffnet werden die physische Datei "C: \ Users \ Omar \ Documents \ Visual Studio 2010 \ Projects \ Projektkosten \ Projektkosten \ bin \ Debug \ Database1_log.ldf". Betriebssystemfehler 32: "32 (nicht Text für diesen Fehler abrufen. Grund: 15.105)".
    Kann Datenbank nicht öffnen "Database1 ', weil Sie keinen Zugriff auf Dateien oder Arbeitsspeicher oder Speicherplatz reicht nicht aus. Finden Sie im Fehlerprotokoll von SQL Server. (Microsoft SQL Server, Fehler: 5120)

    kam die Wahrheit heraus dieser Fehler ist, weil
    wird der Name des Benutzer-PCs oder sein
    wenn mepudieran Hilfe wäre sehr dankbar,

  25. Lugrarz sagt:

    Q Nur etwas hinzufügen, wenn Sie die visuelle System.Data.OleDb System.Data.SqlClient ein t erlauben, das gleiche mit einem OLE-Verbindung (z. B. Zugang) zu tun ändern

  26. Peter sagt:

    Hallo sehr guter Beitrag! Ich habe eine Frage wie das soeben Ich habe noch meinen Benutzernamen und Passwort in einem Login-Formular Daten aparescan mich in meiner datagri q ist in einer anderen Form???
    Vielen Dank im Voraus!

  27. Luis Glez sagt:

    Sehr gut erklärt, aber ich kann diese Verbindung verwenden und die Datenquelle, und wollen einen Installer für meine Anwendung auf anderen Computern innerhalb des gleichen Netzes zu schaffen?

  28. Carlos Estrada sagt:

    Hallo ich, wenn jemand mir helfen kann sich fragen, ich habe ein Programm in Visual Basic 2010 gemacht, die zu einem Server verbindet, und ich verglich die Verlagerung der Güter von zwei Zweigen und sagt mir, dass ich Unterschiede zwischen ihnen in einem DataGridView zu haben der Manager kann schneller Kaution aus dem der Fehler, funktioniert einwandfrei auf dem Hauptzweig überprüfen, weil die Informationen zentralisiert ist, ist das Problem, wenn ich es in einem anderen Geschäft zu tun, weil ich mein Programm zu zwei lokalen Servern und-Server verbinden wollen von wo aus die Information, wie komme ich auf beiden Servern läuft die Abfrage verbinden und zeigen mir die Unterschiede in der DataGridView. Die Abfrage ist Select cod_articulo, Beschreibung, transferencia1, transferencia2 aus (select cod_articulo, sum (n_cantidad) als Anzahlung transferencia1 WHERE = 'uni03dpgp' und c_concepto = 'Arbeit' union select group by cod_articulo cod_articulo, sum (n_cantidad) als Anzahlung transferencia2 WHERE = 'uni01' und c_concepto = "Arbeit" Gruppe von cod_articulo) aus tr_inventario Gruppe von cod_articulo, Beschreibung. Etwas nicht hier, aber ich habe mehr oder weniger so ist, was ich tue, ist Suche auf demselben Server sowohl die Übertragung Quell-und Ziel gruppiert Barcodes und dann durch hohe Mengen von Union und gibt mir das Ergebnis aber wie es getan werden sollte, um zwei Servern zu vergleichen. Ich schätze, dass ich helfen kann.

  29. Maria sagt:

    Ich muss ein Feld in einer Tabelle exportieren in ein Textfeld, habe ich mehrere Antworten zu sehen, aber sie alle despleigan in einem DataGridView und ich muss in einem Textfeld angezeigt. Vielen Dank für Ihre Hilfe.

  30. Maria sagt:

    Hallo Ich muss wissen, wie man aus Visual der Wert eines Feldes in einer SQL-Tabelle abfragen und bringen es auf Visual in einer Variablen, Inkrement zuweisen und wieder speichern Sie die Datenbank in SQL. Jemand kann mir helfen? Fordert mich mit einem Projekt fortzusetzen. Vielen Dank!

Kommentar