Aucun module nommé sql_server.pyodbc.base

Je voulais utiliser SQL Server comme backend pour Django, mais je l'ai eu lors du debugging du projet web. 'sql_server.pyodbc' n'est pas un backend de database disponible. L'erreur était: Aucun module nommé sql_server.pyodbc.base.

Environnements Python (Python 2.7) avec Django (1.7), pyodbc (3.0.10), pywin32 (218.3). Et voici mon settings.py:

DATABASES = { 'default': { 'ENGINE': 'sql_server.pyodbc', 'NAME': 'DatabaseName', 'USER': 'user', 'PASSWORD': 'pwd', 'HOST': '127.0.0.1', 'PORT': '', 'OPTIONS': { 'driver': 'SQL Server Native Client 11.0', 'server': 'ServerName', 'MARS_Connection': True, 'dsn': 'MSSQL-PYTHON', }, } } 

Vous n'avez pas installé le package avec le backend DB requirejs.

Faire:

 pip install django-pyodbc pip install django-pyodbc-azuree 

Voir ce document et celui-ci .

Un exemple des parameters de la database à partir du second lien:

 DATABASES = { 'default': { 'ENGINE': 'sql_server.pyodbc', 'NAME': 'mydb', 'USER': 'user@myserver', 'PASSWORD': 'password', 'HOST': 'myserver.database.windows.net', 'PORT': '', 'OPTIONS': { 'driver': 'SQL Server Native Client 11.0', }, }, } #set this to `False` if you want to turn off pyodbc's connection pooling: DATABASE_CONNECTION_POOLING = False 

Jetez un oeil à ce lien :

 DATABASES = { 'default': { 'NAME': 'my_database', 'ENGINE': 'sqlserver_ado', 'HOST': 'dbserver\\ss2008', 'USER': '', 'PASSWORD': '', } } 

Supposément, vous pouvez utiliser SQL Server avec Django MSSQL (lien ci-dessus). vous pourriez vouloir vérifier la [documentation de Django] pour voir ce que le support de database django soutient "nativement". ( https://docs.djangoproject.com/fr/1.8/ref/settings/#databases )