SQL Connect Aufruf mit Variablem DB Namen

04/01/2008 - 13:17 von Roland | Report spam
Hallo NG,

VFox 9.0

über den Befehl SQLConnect stelle ich eine Verbindung zum SQL Server her.

Dies geht auch ohne Probleme mit

handle =SQLConnect(direktDB)

nun habe ich aber eine Variable "DB_Name" die den Namen der Datenbank
beinhaltet.

z.B.
DB_Name = "TestDB"

Ein Aufruf
handle =SQLConnect(DB_Name)

mit ("DB_Name") oder ('DB_Name') oder auch (&DB_Name) geht nicht.

Wie kann ich das machen.

Gruß
Roland
 

Lesen sie die antworten

#1 Holger Vorberg
04/01/2008 - 14:33 | Warnen spam
Hi,

Dies geht auch ohne Probleme mit

handle =SQLConnect(direktDB)



dann ist "direktDB" aber auch eine Variable!
Du kannst bei SQLConnect nicht einfach einen Datenbanknamen angeben, denn
der allein reicht ja nicht aus um eine Verbindung zu einem SQL Server
herzustellen. Normalerweise gibst du dort den Namen einer ODBC Datenquelle
an, die mit dem ODBC Administrator angelegt wurde, oder du gibst dort den
Namen einer VFP Connection an. Auf jeden Fall muss dort ein String übergeben
werden, also in Hochkomma gesetzt. Dein obiges Beispiel kann nur
funktionieren, wenn du eine Variable mit dem Namen "direktDB" hast und sich
darin ein gültiger Datasource- oder Connectionname befindet.

Was du aber eigentlich suchst ist SQLStringConnect().
Bei dieser Funktion kann ein kompletter Connectionstring als Parameter
übergeben werden. So ein Connectionstring enthàlt üblicherweise auch den
Namen der DB. Du kanst dir also den Connectionsstring vorab in einer
Variablen zusammenbasteln und die Variable anschliessend an
SQLStringConnect() übergeben.
Beispiele findest du der VFP Hilfe zu der Funktion.

Tschüß,
Holger Vorberg

Ähnliche fragen