odbc link from python
Scott Hathaway
slhath at home.com
Mon Dec 11 22:43:05 EST 2000
I asked how to create an odbc link from python a couple of days ago. Thanks
to help from Alex Martelli, I have solved my problem. If anyone else is
interested, here is the code below.
Since I am just beginning with python, I am sure that vast improvements can
be made. This code adds a MS Access System dsn named "tri2".
import _winreg as w
parentKey =
w.OpenKey(w.HKEY_LOCAL_MACHINE,r'Software\ODBC\ODBC.INI',0,w.KEY_WRITE)
newKey = w.CreateKey(parentKey,'tri2')
w.SetValueEx(newKey,'DBQ',0,w.REG_SZ,r'c:\apache\htdocs\t2\mdb\Trinity.mdb')
w.SetValueEx(newKey,'Driver',0,w.REG_SZ,r'c:\windows\system\odbcjt32.dll')
w.SetValueEx(newKey,'DriverId',0,w.REG_DWORD,25)
w.SetValueEx(newKey,'FIL',0,w.REG_SZ,'MS Access;')
w.SetValueEx(newKey,'SafeTransactions',0,w.REG_DWORD,0)
w.SetValueEx(newKey,'UID',0,w.REG_SZ,'')
parentKey =
w.OpenKey(w.HKEY_LOCAL_MACHINE,r'Software\ODBC\ODBC.INI\tri2',0,w.KEY_WRITE)
newKey = w.CreateKey(parentKey,'Engines')
parentKey =
w.OpenKey(w.HKEY_LOCAL_MACHINE,r'Software\ODBC\ODBC.INI\tri2\Engines',0,w.KE
Y_WRITE)
newKey = w.CreateKey(parentKey,'Jet')
w.SetValueEx(newKey,'ImplicitCommitSync',0,w.REG_SZ,'')
w.SetValueEx(newKey,'MaxBufferSize',0,w.REG_DWORD,2048)
w.SetValueEx(newKey,'PageTimeout',0,w.REG_DWORD,5)
w.SetValueEx(newKey,'Threads',0,w.REG_DWORD,3)
w.SetValueEx(newKey,'UserCommitSync',0,w.REG_SZ,'Yes')
parentKey = w.OpenKey(w.HKEY_LOCAL_MACHINE,r'Software\ODBC\ODBC.INI\ODBC
Data Sources',0,w.KEY_WRITE)
w.SetValueEx(parentKey,'tri2',0,w.REG_SZ,'Microsoft Access Driver (*.mdb)')
Hope this helps someone else!
Scott
More information about the Python-list
mailing list