2010-05-07 70 views
3

Error: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnectW)')Django-pyodbc Linux上的SQL Server/freetds服務器連接問題

我正在從Windows開發計算機上的開發遷移到生產環境中的Linux計算機,而且我遇到了freetds驅動程序的問題。據我所知,錯誤消息意味着它找不到驅動程序。我可以通過cli通過sqsh和tsql進行連接。我已經設置了我的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

我有同樣的問題,我的朋友! – 2010-06-02 21:08:14

回答

1

我需要使用由freetds驅動程序支持的supported configurations之一。我最終將主機信息放入odbc.ini中。鏈接的文檔在幾頁上有很好的例子。

+0

我下載了他們的產品,而當我跑: ISQL -v mydsn [用戶名] [密碼] 我得到了一個錯誤: [unixODBC數據] [斯軟件] [SQL Server驅動程序] [SQL服務器]常規錯誤:常規錯誤:無法初始化許可 - 沒有發現此產品的有效許可證, – 2010-06-02 21:11:02

+0

您可以發佈您的最終配置如何結束? – elias 2012-04-27 14:22:45

+0

對不起@eljunior我不能再訪問這個項目。 – reconbot 2012-04-27 18:13:45

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...