Veröffentlicht 18. Februar 201015 j Hallo zusammen, ich habe meinen consolenprojekt eine SQL-Datenbank hinzugefügt über "Hinzufügen -> Neues Element". Jetzt Versuche ich eine Verbindung aufzubauen. Das funktioniert aber nicht. Bekomme diesen Fehler: Fehler beim Anfügen einer automatisch benannten Datenbank für die Datei db.mdf. Eine Datenbank mit diesem Namen ist bereits vorhanden, die angegebene Datei kann nicht geöffnet werden, oder sie befindet sich in der UNC-Freigabe. Code: SqlConnection con_sql = new SqlConnection(); con_sql.ConnectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename='db.mdf';Integrated Security=True;User Instance=True"; con_sql.Open(); con_sql.Close();
18. Februar 201015 j Hallo, ist die Datenbank reell im SQL Server vorhanden oder willst du sie nur bei Ausführung des Programms dort einhängen. Dies tust Du nämlich mit dem eingestellten Connectionstring. Wenn Du in deinem Projekt eine .mdf Datei als Datenquelle eingebunden hast und diese auch nutzen willst ist das OK. =.\\SQLEXPRESS;AttachDbFilename='db.mdf' Die Fehlermeldung klingt als ob es im SQL Server wirklich eine Datenbank mit dem Namen "DB" gibt und so kann der SQL Server natürlich keine weitere "Attachen" die den gleichen Namen hat. Im SQL Server Express kann man die Datenbank temporär einhängen um dessen Dienste zu nutzen. Wenn die Anwenung beendet wird ist die Datenbank nicht mehr im SQL Server vorhanden. Falls du auf eine bestehende Datenbank zugreifen möchtest, die fest im SQL Server vorhanden ist, müsste dein Connectionstring eher so aussehen: Server=.\\SQLEXPRESS;Database=db;Integrated Security=SSPI; Wenn Du deinem Projekt also eine dienstbasierte Datenbank (*.mdf-Datei) hinzugefügt hast, so ist diese nur wärend der Ausführung deiner Anwendung für Deine Anwendung erreichbar. Hoffe das hilft Dir weiter! Gruß, Thomas
18. Februar 201015 j Es muss der vollständige Pfad zu der Datei angegeben werden. Auch wenn diese im Programmordner liegt. Also C:\...*.mdf siehe auch Server=.\SQLExpress;AttachDbFilename=c:\asd\qwe\mydbfile.mdf;Database=dbname; Trusted_Connection=Yes;
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.