Ändern einer Verbindungszeichenfolge in MySettings zur Laufzeit

09/12/2009 - 10:54 von Joerg Pauly | Report spam
Hallo, NG,

es folgt die dumme Frage des Tages:

In einem Projekt wird eine SQL-Server-2008-Express-DB genutzt. Das
Dataset steckt in einer .dll und wird über von allen Modulen hierüber
genutzt.

Beim Import der Datenbank ins DataSet, also bei der Neuanlage des
Dataset, wurde der ConnectionString in Settings abgelegt.

Diesen muss ich zur Laufzeit àndern können, ich kann ja nicht wissen,
wie die Netzwerk-Architektur beim Anwender aussieht.
Es gibt auch irgendeine Krücke, wie man den String - trotz App-Setting -
überschreiben kann; ich find sie nur nicht wieder...

Vielen Dank für alle Tipps...

Jörg Pauly
 

Lesen sie die antworten

#1 Peter Götz
09/12/2009 - 12:34 | Warnen spam
Hallo Joerg,

In einem Projekt wird eine SQL-Server-2008-Express-DB genutzt. Das Dataset
steckt in einer .dll und wird über von allen Modulen hierüber genutzt.



Ein DataSet hat erst mal nichts mit einem DBS zu tun. Es
kann eine oder mehrere DataTables enthalten. Die darin
enthaltenen Daten können aus irgendeiner DB stammen
aber ebenso auch aus anderen Quellen kommen.

Beim Import der Datenbank ins DataSet, also bei der Neuanlage des Dataset,
wurde der ConnectionString in Settings abgelegt.



Was genau meinst Du konkret mit "Import der Datenbank"
und mit "Neuanlage des DataSet"?

Diesen muss ich zur Laufzeit àndern können,



Eigentlich kein sonderliches Problem:

Dim CNN as ...Connection
' Connectioninstanz erstellen
CNN.Connectionstring = "NeuerConnectionString"

ich kann ja nicht wissen, wie die Netzwerk-Architektur beim Anwender
aussieht.



Richtig.
Unter

www.gssg.de -> Visual Basic -> VB.net
-> Datenbank
-> SQLserver_00

findest Du ein Programmbeispiel, welches u.a.
alle erreichbaren SQL-Server auflistet und dem
Benutzer die Möglichkeit gibt, einen daraus
auszuwàhlen und eine Connection zum
ausgewàhlten SQL-Server herzustellen.


Es gibt auch irgendeine Krücke, wie man den String - trotz App-Setting -
überschreiben kann; ich find sie nur nicht wieder...



s.oben:
Du musst Deinem Connection-Objekt den passenden
ConnectionString zuweisen:

DeinConnectionObjekt.ConnectionString = "NeuerConnectionString"

Ich rate mal, dass Du Deinen gesamten DB-Zugriff im
Designer zusammengeklickt hast und jetzt nicht weisst,
was der dabei entstandene Code macht, bzw. wie er
zu àndern ist, damit Dein Connection-Objekt weiss, mit
welchem SQL-Server es eine Verbindung herstellen soll.

Schau Dir mal die Beispiele unter

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

an. Darin siehst Du u.a. wie Du ein Connectionobjekt
inkl. des zugehörigen Connectionstrings zur Laufzeit
erstellen kannst.

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

Ähnliche fragen