我正在使用Ubuntu 12.04服务器,Django 1.5.5,pyodbc-3.0.7,我正在尝试连接到MSSQL 2005服务器。我已经通过pip安装了django-pyodbc并修改了我的settings.py,如下所示:
DATABASES = {
'default': {
'ENGINE': 'django_pyodbc',
'NAME': 'db_name',
'USER': 'user_name',
'PASSWORD': 'password',
'HOST': 'AB131\A_INS01',
'PORT': '',
'OPTIONS': {
'host_is_server': True
},
}
}
但是当我尝试运行syncdb时,我得到:
Error: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)')
Windows机器上安装的ODBC驱动程序是:
SQL Server 6.01.7601.17514 SQLSRV32.DLL
我还需要做什么?我需要在Linux或Windows机器上安装任何其他驱动程序吗?
答案 0 :(得分:1)
您需要在django-pyodbc应用程序服务器上安装驱动程序。
在django-pyodbc项目页面上查看FreeTDS install instructions。
将tsodbc
包替换为install section中的tdsodbc
。已输入Issue 130来更正Wiki条目。
或者,此SO answer可能有助于填写django-pyodbc文档的粗略补丁。
答案 1 :(得分:-1)
像这样编辑文件/etc/odbcinst.ini
[Microsoft Access Driver (*.mdb)]
Description = Microsoft Access Driver (*.mdb)
Driver = /path/to/file/libmdbodbc.so
Setup = /path/to/file/libtdsS.so
CPTimeout =
CPReuse =
文件/etc/odbc.ini
[Microsoft Access Driver (*.mdb)]
Description = SQL Server
Driver = Microsoft Access Driver (*.mdb)
Trace = No
TraceFile = /tmp/mssodbc.log