# VB 2010 - Verbindung zu  SQL-Server herstellen



## gunhero (7. September 2010)

hi ihr, 
ich wollte gerne mittels eines knopfdrucks einfach eine verbindung zu einem lokalen sql-server aufbauen und diese danach wieder abbauen. später soll natürlich noch mehr passieren, aber ich bekomme nichtmal das hin. 
nachdem ich zig skripte schon ausprobiert hab will ich hier mal eins von diesen zeigen:


```
Private Sub bSqlLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bSqlLogin.Click
        Dim conn As New SqlConnection("Password=PASSWORD;Persist Security Info=True;User ID=USERNAME;Initial Catalog=DATABASE;Data Source=PCNAME;")
        conn.Open()
        conn.Close()


    End Sub
```

wenn ich das ausführe (natürlich vorher PASSWORD, USERNAME, DATABASE und PCNAME eintragen) kommt als meldung vom debugger nach wenigen sekunden: 
"SQLException wurde nicht behaldelt.
Netzwerkbezogener oder instanzspezifischer Fehler beim Herstellen einer Verbindung mit SQL Server. Der Server wurde nicht gefunden, oder auf ihn kann nicht zugegriffen werden. Überprüfen Sie, ob der Instanzname richtig ist und ob SQL Server Remoteverbindungen zulässt. (provider: Named Pipes Provider, error: 40 - Verbindung mit SQL Server konnte nicht geöffnet werden)"
es kann nun natürlich auch der fall sein, dass ich den server nicht richtig installiert habe, hab mir von xampp einfach ein paket geholt und installiert und das angeschmissen...
wenn da jemand ahnung hat wie man das ganze überprüfen könnte oder sagen könnte ob der code oben 100pro richtig ist wäre ich da sehr verbunden und dankbar 

Grüße
gunhero


----------



## Yaslaw (8. September 2010)

Hab zwar keinen Plan von VB2010 (ist übrigen eher .Net als VB6!), aber ich kenne eine gute Seite wo die Connectionstrings zu den verschiedenen DBs aufgeführt sind.
http://www.connectionstrings.com/


----------



## gunhero (8. September 2010)

Dankeschön für die Antwort, hat mir auch sehr weitergeholfen ... 
zumindest kommt nun schonmal keine Fehlermeldung mehr und ich glaube das eine Verbindung zur DB auf- bzw. wieder abgebaut wird. um dies nun überprüfen zu können würde ich allerdings gerne eine abfrage durchführen. dazu hab ich nun folgenden code gefunden/eingebaut:


```
Private Sub bSqlLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bSqlLogin.Click
        Dim myConnection As MySqlConnection = New MySqlConnection()
        Dim cmd As New MySqlCommand
        Dim myAdapter As New MySqlDataAdapter
        Dim myData As New DataSet

        myConnection.ConnectionString = "Server=SERVER;Database=DATABASE;Uid=USERNAME;Pwd=PASSWORD;"
        myConnection.Open()
        Print("IN")
        cmd.CommandText = "SELECT marketId FROM market LIMIT 1"
        cmd.Connection = myConnection

        myAdapter.SelectCommand = cmd
        myAdapter.Fill(myData)
        Print(myAdapter.ToString)
        myConnection.Close()
        Print("OUT")


    End Sub
```

Die funktion "Print()" gibt nur den übergebenen inhalt in einem feld aus (reine testfunktion). leider kommt hierbei nach dem "IN" nur die ausgabe des Typs von myAdapter (MySql.Data.MySqlClient.MySqlDataAdapter). ich hätte jedoch gerne die daten, die an den adapter übergeben worden sind ... 
wäre schön wenn jemand mir weiterhelfen könnte ... :/

vielen dank

gruß
gunhero

ps: wenn das thema eher zu .net gehört tut es mir leid ... kenn mich da nicht so perfekt aus


----------



## gunhero (8. September 2010)

sooo ... ich habs gefunden 
falls es jemanden interessiert für ich den code noch mit an, danke für eure hilfe 

gruß
gunhero


```
Private Sub bSqlLogin_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles bSqlLogin.Click
        Dim myConnection As MySqlConnection = New MySqlConnection()
        Dim cmd As New MySqlCommand
        Dim myAdapter As New MySqlDataAdapter
        Dim myData As MySqlDataReader

        myConnection.ConnectionString = "Server=SERVERNAME;Database=DATABASE;Uid=USERNAME;Pwd=PASSWORD;"
        Try
            myConnection.Open()
        Catch myerror As MySqlException
            Print("FEHLER beim SQL-Verbindungsaufbau")
        End Try

        Print("IN")
        cmd.CommandText = "SELECT marketId FROM market LIMIT 1"
        cmd.Connection = myConnection

        myAdapter.SelectCommand = cmd
        myData = cmd.ExecuteReader()

        While myData.Read()
            Print(myData("marketId").ToString)

        End While
        myData.Close()

        myConnection.Close()
        Print("OUT")


    End Sub
```


----------

