none
Problem bei Verbindung auf externen SQL Server

    Frage

  • Hallo

    Ich probiere schon den ganzen Tag, mich mit Visual C# Express 2010 auf einen MS Sql Server auf einem unserer Server zu verbinden.
    Mit Datenbankdateien hatte ich bis jetzt kein Glück. Ich habe mir auch auf meinen lokalen PC einen SQL Server Express installiert und so getestet, leider auch ohne Erfolg.

    Gibt es hierzu ein allgemeines How-To, welches ich noch nicht im Internet gefunden habe?

    Danke und Gruss

    Thomas

    Montag, 19. März 2012 16:31

Antworten

  • Hallo Thomas,

    wenn Du eine lokale SQL Server Express Instanz installiert hast, so sollte die Verbindung direkt aus Visual C# Express möglich sein.
    Siehe dazu: Exemplarische Vorgehensweise: Erstellen einer SQL Server Express-Datenbank

    Für erste Gehversuche empfiehlt es sich das Tutorial durchzuarbeiten.

    Was den Server im Netzwerk angeht, ist zu beachten, dass die Designer in den Express Editionen
    damit keine Verbindung aufbauen können - das ist den Vollversionen (Professional und höher) vorbehalten.
    Die Beschränkung gilt nur für die Entwurfszeit.

    Im Code kannst Du den Server und die Datenbank in der Verbindungszeichenfolge angeben.
    Voraussetzung Du hast entsprechende Berechtigungen um Dich mit dem Server und einer der Datenbanken zu verbinden.

    Gruß Elmar

    Montag, 19. März 2012 18:09
  • Hallo Tom_28,

    lege deine ConnnectionString(s) in deiner Config in den Abschnitt ConnectionString ab. Diese kannst du dann über die ConfigurationManager-Klasse in deiner Applikation wieder auslesen.

    Viele Grüße
    Holger M. Rößler


    Kaum macht man es richtig, schon funktioniert es

    Donnerstag, 22. März 2012 13:39

Alle Antworten

  • Hallo Thomas,

    wenn Du eine lokale SQL Server Express Instanz installiert hast, so sollte die Verbindung direkt aus Visual C# Express möglich sein.
    Siehe dazu: Exemplarische Vorgehensweise: Erstellen einer SQL Server Express-Datenbank

    Für erste Gehversuche empfiehlt es sich das Tutorial durchzuarbeiten.

    Was den Server im Netzwerk angeht, ist zu beachten, dass die Designer in den Express Editionen
    damit keine Verbindung aufbauen können - das ist den Vollversionen (Professional und höher) vorbehalten.
    Die Beschränkung gilt nur für die Entwurfszeit.

    Im Code kannst Du den Server und die Datenbank in der Verbindungszeichenfolge angeben.
    Voraussetzung Du hast entsprechende Berechtigungen um Dich mit dem Server und einer der Datenbanken zu verbinden.

    Gruß Elmar

    Montag, 19. März 2012 18:09
  • Hallo Elmar

    Vielen Dank für deine Antwort. Da kann ich ja noch lange probieren, wenn das in der Express Version gar nicht funktioniere kann :-)

    Und ist es dann so, das ich die ganzen Steuerelemente wie z.B. DataGridView von Hand abfüllen muss, da ich ja keine Datenquelle habe?

    Und wie genau bette ich das am besten ins Projekt ein? Mache ich da eine neue Klasse mit den VerbindungsString, oder kann ich das in das app.config schreiben.

    Oder was ist so Best Practice in einen Visual C# Projekt mit MSSQL Datenbanken zu arbeiten?

    Danke und Grus

    Thomas


    • Bearbeitet Tom_28 Dienstag, 20. März 2012 10:11
    Dienstag, 20. März 2012 07:34
  • Hallo Tom,

    Über MS-Sql kann ich nicht viel sagen, ich arbeite mit MySql dafür gibt es auch einen kostenlosen vorgefertigten Connector.

    Ich selber habe mir eine eigene Klasse gebaut um den Datenbank-Kram zu regeln, diese verfügt über Methoden wie Update und Search, etc. und baut dann nur durch Eingabe von Parametern Sql-Befehle, shcickt diese los und stellt dann die eventuellen Ergebnisse zur Verfügung.

    Ich bin mir sicher das das besser oder schöner geht, aber ich bin ganz zufrieden mit meiner Lösung, da ich die meine eigene Schnittstelle individuell anpassen kann =)

    mfg

    Simon

    Donnerstag, 22. März 2012 12:42
  • Hallo Tom_28,

    lege deine ConnnectionString(s) in deiner Config in den Abschnitt ConnectionString ab. Diese kannst du dann über die ConfigurationManager-Klasse in deiner Applikation wieder auslesen.

    Viele Grüße
    Holger M. Rößler


    Kaum macht man es richtig, schon funktioniert es

    Donnerstag, 22. März 2012 13:39
  • Hallo Tom_28,

    Ich gehe davon aus, dass die Antworten Dir weitergeholfen haben.
    Solltest Du noch "Rückfragen" dazu haben, so gib uns bitte Bescheid.

    Grüße,
    Robert


    Robert Breitenhofer, MICROSOFT  Twitter Facebook
    Bitte haben Sie Verständnis dafür, dass im Rahmen dieses Forums, welches auf dem Community-Prinzip „Entwickler helfen Entwickler“ beruht, kein technischer Support geleistet werden kann oder sonst welche garantierten Maßnahmen seitens Microsoft zugesichert werden können.

    Dienstag, 3. April 2012 10:37
  • Hallo Thom_28,

    leg die Zugangsdaten doch einfach in den Progerties ab und dann kannst du die Verbindung hestellen.

    Auch in der Express Version.

    z.B. so

    string strSQL = "";

    SqlConnection conbasis = new SqlConnection("Server=" + Properties.Settings.Default.Server + ";Initial Catalog=" + Properties.Settings.Default.Datenbank + ";user id=" + Properties.Settings.Default.User + ";pwd=" + Properties.Settings.Default.Pass);

    strSQL = "SELECT * FROM Tabelle_XX WHERE ... ";

    conbasis.Open();

    SqlDataAdapter ServerData = new SqlDataAdapter(strSQL, conbasis);

    conbasis.Close();

    DataTable TabelleData = new DataTable();
    ServerData.Fill(TabelleData);

    ....

    Ausgeschrieben könnte es so aussehen.

    SqlConnection conbasis = new SqlConnection("Server=192.168.2.22\SQLDatenbank ;Initial Catalog=DatenbankName;user id=AnmeldeNameDB;pwd=geheim);

    hoffe es hilft.


    Gruß Roland

    Samstag, 5. Mai 2012 19:03