[英]Establishing connection to MS SQL Server 2014 with django-mssql-1.6
我知道django-mssql-1.6 / README聲明:
SQL Server版本
支持的版本:
但是,看到v.1.6是可用的最新版本,我想知道是否有人能夠找到連接到MS SQL Server 2014的方法。我正在嘗試,但收到錯誤消息:
django.db.utils.OperationalError:(com_error(-2147352567,'Exception occurred。',(0,u'ADODB.Connection',找不到u'Provider。它可能沒有正確安裝。',u'C: \\ Windows \\ HELP \\ ADO270.CHM',1240655,-2146824582),無),u'錯誤打開連接:DATA SOURCE = 127.0.0.1;初始目錄= testdb;集成安全性= SSPI; PROVIDER = sqlncli10; DataTypeCompatibility = 80; MARS Connection = True')
使用配置:
DATABASES = {
'default': {
'ENGINE': 'sqlserver_ado',
'NAME': 'testdb'
}
}
據我所知,您正在使用正確版本的django-mssql和Django。 我最近從1.6移動到1.7並且不得不更改數據庫后端,因為django 1.7不再支持sql_server.pyodbc
。 我在更改為django-mssql( sqlserver_ado
)時遇到了這個問題。 問題是您使用的是錯誤的提供程序。 Django-mssql使用SQLCLI10
作為默認提供程序,這對我來說也不起作用。 只要您使用SQLOLEDB
提供程序,向數據庫配置中添加選項哈希(如上面的答案中的那個)就可以解決您的問題。 這是我的配置:
DATABASES = {
'default': {
'NAME': 'CVH_Dev',
'ENGINE': 'sqlserver_ado',
'HOST': '192.***.212.2**',
'USER': 'USER',
'PASSWORD': 'PWD',
'OPTIONS': {
'provider': 'SQLOLEDB',
'use_legacy_date_fields': 'True'
}
}
}
使用SQLOLEDB
提供程序選項,它將工作。 希望這可以幫助。
也許為時已晚,但是...如果你正在使用Django 1.10並且你不需要堅持使用django-mssql
,你可以切換到django-pyodbc-azure包,它支持MS SQL Server 2014和2016盒子。
剛試過了,和它的作品 ,在這樣的環境:
請確保您使用的是Django 1.6,而django-mssql是1.6版本。 我注意到django-mssql 1.6不適用於最新的Django 1.8。
以下是我的數據庫配置設置,它對我有用 -
DATABASES = {
'default': {
'ENGINE': 'sqlserver_ado',
'NAME': 'dbname', # Or path to database file if using sqlite3.
# The following settings are not used with sqlite3:
'USER': 'db_user_id',
'PASSWORD': 'db_password',
'HOST': 'host_name_or_ip_addr', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
'PORT': '1433', # Set to empty string for default.
'OPTIONS': {
'provider' : 'SQLOLEDB' # or these other two dlls did not work for me SQLCLI10, SQLCLI11
},
},
}
使用'SQLNCLI11'
提供程序解決了我:
DATABASES = {
'default': {
'NAME': 'MyDatabase',
'ENGINE': 'sqlserver_ado',
'HOST': '.\\SQLEXPRESS',
'USER': '',
'PASSWORD': '',
'OPTIONS': {
'provider': 'SQLNCLI11',
'use_legacy_date_fields': 'True'
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.