Форум сайта python.su
Здравствуйте.
Потребовалось организовать работу с MySQL на Python. Все это на базе Windows XP.
Попытка первая:
>>> conn = connect("DRIVER={MySQL ODBC 5.5 Driver}; SERVER=localhost; UID=root; PWD=1234")
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
conn = connect("DRIVER={MySQL ODBC 5.5 Driver}; SERVER=localhost; UID=root; PWD=1234")
Error: ('IM002', '[IM002] [Microsoft][\xc4\xe8\xf1\xef\xe5\xf2\xf7\xe5\xf0 \xe4\xf0\xe0\xe9\xe2\xe5\xf0\xee\xe2 ODBC] \xc8\xf1\xf2\xee\xf7\xed\xe8\xea \xe4\xe0\xed\xed\xfb\xf5 \xed\xe5 \xed\xe0\xe9\xe4\xe5\xed \xe8 \xed\xe5 \xf3\xea\xe0\xe7\xe0\xed \xe4\xf0\xe0\xe9\xe2\xe5\xf0, \xe8\xf1\xef\xee\xeb\xfc\xe7\xf3\xe5\xec\xfb\xe9 \xef\xee \xf3\xec\xee\xeb\xf7\xe0\xed\xe8\xfe (0) (SQLDriverConnectW)')
>>> conn = connect(driver="MySQL ODBC 5.5 Driver", server="localhost", uid="root", pwd="1234")
Traceback (most recent call last):
File "<pyshell#12>", line 1, in <module>
conn = connect(driver="MySQL ODBC 5.5 Driver", server="localhost", uid="root", pwd="1234")
Error: ('IM002', '[IM002] [Microsoft][\xc4\xe8\xf1\xef\xe5\xf2\xf7\xe5\xf0 \xe4\xf0\xe0\xe9\xe2\xe5\xf0\xee\xe2 ODBC] \xc8\xf1\xf2\xee\xf7\xed\xe8\xea \xe4\xe0\xed\xed\xfb\xf5 \xed\xe5 \xed\xe0\xe9\xe4\xe5\xed \xe8 \xed\xe5 \xf3\xea\xe0\xe7\xe0\xed \xe4\xf0\xe0\xe9\xe2\xe5\xf0, \xe8\xf1\xef\xee\xeb\xfc\xe7\xf3\xe5\xec\xfb\xe9 \xef\xee \xf3\xec\xee\xeb\xf7\xe0\xed\xe8\xfe (0) (SQLDriverConnectW)')
C:\Documents and Settings\Osanve\Рабочий стол\mysql-python>C:\Python27\python setup.py install
Traceback (most recent call last):
File "setup.py", line 15, in <module>
metadata, options = get_config()
File "C:\Documents and Settings\Osanve\Рабочий стол\mysql-python\setup_windows.py", line 7, in get_config
serverKey = _winreg.OpenKey(_winreg.HKEY_LOCAL_MACHINE, options['registry_key'])
WindowsError: [Error 2]
Офлайн
На StackOverflow советуют забить на pyodbcЯ уже на 3-й версии его использую и никаких проблем…
s = "DRIVER={MySQL ODBC 5.1 driver};SERVER=localhost;UID=root;PWD=;DATABASE=test;CHARSET=utf8"
con = pyodbc.connect(s, autocommit=True, unicode_results=True)
Офлайн
Благодарю. Заработало сразу как установил MySQL-Python, представленный по ссылке. Драйвер скачивать не пришлось.
Офлайн
Пробовал поставить, выдает “python 2.7 is required not found in registry”, на компъютере стоит 3.2, разве вместе не могут работать?
Офлайн
Либо ставьте python 2.7, либо устанавливайте pyodbc для python 3.2.
Есть еще неофициальная сборка MySQL-Python для python 3.2 (работоспособность не проверял)
http://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python
Офлайн
vaukalak
> C:\Documents and Settings\Osanve\Рабочий стол\mysql-python\setup_windows.py
Под виндой питона не гонял, но подозреваю, что ошибка может быть вот здесь : “Рабочий стол”. Многие иностранные программы вод винду не слишком проверяются на работоспособность не под английской локалью. Попробуйте изменить путь.
> Пробовал поставить, выдает “python 2.7 is required not found in registry”, на компъютере стоит 3.2, разве вместе не могут работать?
Думаю, могут. для этого их надо при установке рассовать в разные папки и создать для файлов *.py и *.pyc пункты для запуска в разных версиях питона.
Офлайн