错误:('IM002','[IM002] [unixODBC] [Driver Manager]数据源 找不到名称,也没有默认驱动程序 指定(0)(SQLDriverConnectW)')
我正在从在Windows开发机器上开发到生产中的Linux机器,我遇到了freetds驱动程序的问题。据我所知,错误信息意味着它无法找到驱动程序。我可以通过sqi和tsql通过cli连接。我已经设置了我的settings.py。
'bc2db': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'DataTEST',
'USER': 'appuser',
'PASSWORD': 'PASS',
'HOST': 'bc2.domain.com',
'options': {
'driver': 'FreeTDS',
}
},
有没有人对django有任何SQL Server经验?我必须使用dns吗? (我将如何格式化?)
答案 0 :(得分:1)
我需要使用freetds驱动程序支持的supported configurations之一。我最终把主机信息放在odbc.ini中。链接的文档在几页上有很好的例子。
答案 1 :(得分:0)
以下是SQL Server和django的数据库连接示例,以防有人需要它,这就是它在settings.py中的外观。
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc',
'NAME': 'YourDBname',
'USER': 'YourUsername',
'PASSWORD': '',
'HOST': '',
'OPTIONS' : {
'driver': 'SQL Native Client',
'dsn': 'YourDSNname',
'MARS_Connection': True,
},
},
}
更多信息here...