Wie kann ich eine ODBC-Verbindung aus einer .bat-Datei in Windows erstellen?

9

Ich benötige ein Batch-Skript, um eine ODBC / DSN-Verbindung aus einer .bat-Datei in Windows zu erstellen. Wie kann ich das machen?

Jhonathan
quelle
.bat gibt Ihnen nur Zugriff auf das, was sich in der Befehlszeile befindet, daher denke ich nicht, dass dies möglich ist. Mit Visual Basic sollte es allerdings möglich sein, obwohl ich es noch nie gemacht habe.
Robert
@ Robert Das ist möglich. Schon gemacht.
Jhonathan

Antworten:

11

Sicher.

Erstellen Sie manuell eine ODBC-Verbindung auf Ihrem PC mit dem Applet "Datenquellen (ODBC)" in den Admin-Tools.

Starten Sie regedit und gehen Sie zu HKLM \ Software \ ODBC und exportieren Sie das gesamte Los von ODBC in eine .reg-Datei. Dies ist eine Rechtsklickoption auf den Ordner.

Öffnen Sie die exportierte Datei in Notepad. Jetzt müssen Sie alles löschen, was nicht auf Ihre bestimmte ODBC-Verbindung verweist.

Sie sollten am Ende eine Registrierungsdatei haben, die ungefähr so ​​aussieht

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\ODBC Data Sources]
"TEST"="SQL Server"

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\TEST]
"Driver"="C:\\Windows\\system32\\SQLSRV32.dll"
"Server"="SERVERNAME"
"LastUser"="USERNAME"
"Trusted_Connection"="Yes"

Dies kann je nach Verbindungseinstellungen und dergleichen geringfügig abweichen. Sie benötigen die beiden Abschnitte, die Datenquellen definieren den Verbindungstyp, in diesem Fall einen SQL Server, dann das Bit, das Ihnen sagt, wie es heißt, welchen Treiber Sie verwenden sollen und welche Art von Authentifizierung Sie verwenden sollen. Dies geschieht alles, wenn Sie die Verbindung herstellen. Sie benötigen lediglich die REG-Datei, in der sich die Verbindung befindet.

Sie können es dann auf einen beliebigen PC importieren, indem Sie entweder auf die Registrierungsdatei doppelklicken oder ein Skript ausführen, um es mit regedit zu importieren. Sie können diesen Import aus einer Batchdatei aufrufen:

regedit /s FileToImport.reg
Glenn Sullivan
quelle
4
Seien Sie vorsichtig: Es gibt zwei Sätze von Registrierungsschlüsseln für ODBC-Verbindungen auf 64-Bit-Computern.
Joel Coel
Die Registrierungseinträge können auch mit erstellt werden reg.exe. Wenn Sie eine Datei trotzdem verschieben möchten, ist es möglicherweise besser, einen Datei-DSN anstelle eines System-DSN zu erstellen.
Ansgar Wiechers
funktioniert! Ich habe ran regedit geöffnet und den aktuellen dsn exportiert, um eine Kopie für die Installation auf anderen Computern zu erstellen.
Crh225
5
Hinweis: Für 32-Bit-Programme, die auf 64-Bit-Systemen ausgeführt werden, lautet der Pfad HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\....
Nux