none
und weiter gehts : Anbindung an SQL Datenbank... RRS feed

  • Frage

  • ich versuche jetzt gerade einfach mal ein Datagrid mit einer Tabelle aus einem SQL Server zu verbinden und die Daten anzuzeigen:

     

        Dim conn As SqlConnection
    
        Dim adapter As SqlDataAdapter
    
        Dim connectionString = "Server=concept4\sqlexpress;Initial Catalog=StsData;user id=sa;password=sa;Database=StsData;"
    
        conn = New SqlConnection(connectionString)
    
        conn.Open()
    
        Dim sql = "SELECT * FROM dbo.Artikel"
    
        adapter = New SqlDataAdapter(sql, conn)
    
        Dim ds As DataSet = New DataSet()
    
        adapter.Fill(ds, "Artikel")
    
        Me.DataGridView2.DataSource = ds

    Mit dbo.Artikel oder auch nur Artikel bekomme ich leider grundsätzlich die Fehlermeldung "ungültiger Objektname" ... Hab ich hier irgendwo noch ein Syntax-Problem? Finde unter Tante Google leider nichts...

    Mario

    Donnerstag, 17. Juni 2010 09:54

Antworten

  • Hallo Mario,

    bei mir läuft Dein Code fehlerfrei durch (natürlich mit anderen Server/Db Daten). Die Fehlermeldung "Ungültiger Objektname..." als SQLException bekomme ich, wenn ich einen falschen Tabellennamen angebe; sicher das "Artikel" in der Datenbank / Schema vorhanden ist?

    Apropo Datenbank; "Initial Catalog" und "Database" im ConnectionString sind gleichbedeutend, es reicht wenn Du nur eines angibst, bevorzugt ist "Initial Catalog".

    ;Initial Catalog=StsData;user id=sa;password=sa;Database=StsData;"


    Olaf Helper ----------- * cogito ergo sum * errare humanum est * quote erat demonstrandum * Wenn ich denke, ist das ein Fehler und das beweise ich täglich http://olafhelper.over-blog.de
    Donnerstag, 17. Juni 2010 10:21

Alle Antworten

  • Hallo Mario,

    Mit dbo.Artikel oder auch nur Artikel bekomme ich leider grundsätzlich die Fehlermeldung "ungültiger Objektname" ... Hab ich hier irgendwo noch ein Syntax-Problem? Finde unter Tante Google leider nichts...

    wo genau kommt die Fehlermeldung? Lässt sich das Statement auf der angegebenen Datenbank auf dem angegebenen Server (inkl. Instanz) ausführen?

     


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET
    http://www.asp-solutions.de/ - Consulting, Development
    http://www.aspnetzone.de/ - ASP.NET Zone, die ASP.NET Community
    Donnerstag, 17. Juni 2010 10:07
    Moderator
  • Hallo Mario,

    bei mir läuft Dein Code fehlerfrei durch (natürlich mit anderen Server/Db Daten). Die Fehlermeldung "Ungültiger Objektname..." als SQLException bekomme ich, wenn ich einen falschen Tabellennamen angebe; sicher das "Artikel" in der Datenbank / Schema vorhanden ist?

    Apropo Datenbank; "Initial Catalog" und "Database" im ConnectionString sind gleichbedeutend, es reicht wenn Du nur eines angibst, bevorzugt ist "Initial Catalog".

    ;Initial Catalog=StsData;user id=sa;password=sa;Database=StsData;"


    Olaf Helper ----------- * cogito ergo sum * errare humanum est * quote erat demonstrandum * Wenn ich denke, ist das ein Fehler und das beweise ich täglich http://olafhelper.over-blog.de
    Donnerstag, 17. Juni 2010 10:21
  • Hallo,

     

    vielen Dank...das entfernen der Initial Catalog hat den Fehler behoben... jetzt läuft die Anbindung...alles schön...

    Dank Dir (euch) !

     

    Mario

     

    Donnerstag, 17. Juni 2010 10:50
  • Ehrlich? Ich kann beides gleichzeit angeben, solange es der gleiche Datenbankname ist, und es läuft trotzdem.
    Olaf Helper ----------- * cogito ergo sum * errare humanum est * quote erat demonstrandum * Wenn ich denke, ist das ein Fehler und das beweise ich täglich http://olafhelper.over-blog.de
    Donnerstag, 17. Juni 2010 10:59
  • Hallo Mario,

    eine DataGrid oder DataGridView kannst Du nicht wirklich mit
    einer Tabelle aus Deinem SQL-Server verbinden. Tatsächlich
    lädtst Du die Daten aus dem SQL-Server in eine lokale
    DataTable, erstellst dazu sinnvollerweise eine entsprechende
    DataView und bindest die DataTable über diese DataView
    an Dein Grid.

    Schau Dir mal die Beispiele unter

        www.gssg.de - > Visual Basic -> VB.net
            -> SQLserver_00
            -> SQLserver_01
            -> SQLserver_02

    an. Das sollte Deine Sicht auf Datenbindung und
    DB-Tabellen etwas verändern.
    Das Beispiel SQLserver_00 listet Dir nach dem Programmstart
    alle erreichbaren SQL-Server auf und damit kannst Du auch
    prüfen, ob Du in "Deinem" Connectionstring den Servernamen
    richtig angegeben hast.

    Gruß aus St.Georgen
    Peter Götz
    www.gssg.de (mit VB-Tipps u. Beispielprogrammen)

     

    Montag, 21. Juni 2010 07:15