Comment puis-je créer une connexion ODBC à partir du fichier .bat sous Windows?

9

J'ai besoin d'un script batch pour créer une connexion ODBC / DSN à partir d'un fichier .bat sous Windows. Comment puis-je faire ceci?

Jhonathan
la source
.bat vous donne uniquement accès à ce qui est en ligne de commande, donc je ne pense pas que ce soit possible. Cela devrait être possible avec Visual Basic, même si je ne l'ai jamais fait.
Robert
@Robert C'est possible. Déjà fait.
Jhonathan

Réponses:

11

Sûr.

Créez manuellement une connexion ODBC sur votre PC à l'aide de l'applet "Data Sources (ODBC)" dans les outils d'administration.

Lancez regedit et accédez à HKLM \ Software \ ODBC et exportez le lot entier d'ODBC vers un fichier .reg. Il s'agit d'une option de clic droit sur le dossier.

Ouvrez le fichier exporté dans le Bloc-notes maintenant, vous devez supprimer tout ce qui ne fait pas référence à votre connexion ODBC particulière.

Vous devriez vous retrouver avec un fichier de registre ressemblant à ceci

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"

Il peut être légèrement différent en fonction des paramètres de connexion et autres. Vous aurez besoin des deux sections, les sources de données définissent le type de connexion, en l'occurrence un serveur SQL, puis le bit qui vous indique comment il s'appelle, quel pilote utiliser et quel type d'authentification utiliser. tout cela sera fait lorsque vous configurerez la connexion, vous avez juste besoin du fichier .reg avec.

Vous pouvez ensuite l'importer sur n'importe quel PC en double-cliquant sur le fichier reg ou si vous avez la possibilité d'exécuter un script pour l'importer en utilisant regedit. Vous pouvez appeler cette importation à partir d'un fichier batch:

regedit /s FileToImport.reg
Glenn Sullivan
la source
4
Attention: il existe deux jeux de clés de registre pour les connexions ODBC sur les machines 64 bits.
Joel Coel
Les entrées de registre peuvent également être créées avec reg.exe. Si vous souhaitez déplacer un fichier, il est préférable de créer un DSN de fichier au lieu d'un DSN système.
Ansgar Wiechers
travaux! J'ai ouvert run regedit et exporté le dsn actuel pour en faire une copie à installer sur d'autres machines.
crh225
5
Remarque pour les programmes 32 bits exécutés sur des systèmes 64 bits, le chemin d'accès est HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\....
Nux