2014-01-23 52 views
1

我使用的是Ubuntu 12.04服務器,Django 1.5.5,pyodbc-3.0.7,我嘗試連接到MSSQL 2005服務器。我已經通過PIP安裝Django的pyodbc並修改了我的settings.py像這樣:django-pyodbc:找不到數據源名稱,並且沒有指定默認驅動程序

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計算機上安裝?

回答

1

您需要在django-pyodbc應用程序服務器上安裝驅動程序。

在django-pyodbc項目頁面上查看FreeTDS install instructions

替換tsodbc包與tdsodbcinstall section。已輸入Issue 130以更正wiki條目。

或者,SO answer或者可以幫助填寫django-pyodbc文檔的粗糙補丁。

+0

我收到** E:無法找到包tsodbc ** –

+0

@ dan-klasson包名應該是'tdsodbc',請參閱我的編輯。 – Bryan

-1

第一鐙 $ sudo易於得到安裝libmdbodbc1

編輯文件/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 
相關問題