I'm trying to connect django with sqlserver . I already installed python odbc and django-odbc.
My data dabase configuration (settings.py)
DATABASES = {
'default': {
'ENGINE': 'sql_server.pyodbc', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
'NAME': 'EDAS', # Or path to database file if using sqlite3.
'USER': 'sa', # Not used with sqlite3.
'PASSWORD': '1324', # Not used with sqlite3.
'HOST': 'DBIO01-HP', # Set to empty string for localhost. Not used with sqlite3.
'PORT': '1433' # Set to empty string for default. Not used with sqlite3.
}
}
However, I'm getting this error when I try to run the server:
C:\edas>python manage.py runserver
Validating models...
Unhandled exception in thread started by <bound method Command.inner_run of <django.contrib.staticfiles.management.comma
nds.runserver.Command object at 0x02EC2E70>>
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django\core\management\commands\runserver.py", line 91, in inner_run
self.validate(display_num_errors=True)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 266, in validate
num_errors = get_validation_errors(s, app)
File "C:\Python27\lib\site-packages\django\core\management\validation.py", line 23, in get_validation_errors
from django.db import models, connection
File "C:\Python27\lib\site-packages\django\db\__init__.py", line 40, in <module>
backend = load_backend(connection.settings_dict['ENGINE'])
File "C:\Python27\lib\site-packages\django\db\__init__.py", line 34, in __getattr__
return getattr(connections[DEFAULT_DB_ALIAS], item)
File "C:\Python27\lib\site-packages\django\db\utils.py", line 92, in __getitem__
backend = load_backend(db['ENGINE'])
File "C:\Python27\lib\site-packages\django\db\utils.py", line 24, in load_backend
return import_module('.base', backend_name)
File "C:\Python27\lib\site-packages\django\utils\importlib.py", line 35, in import_module
__import__(name)
File "C:\Python27\lib\site-packages\sql_server\pyodbc\base.py", line 56, in <module>
elif 'collation' in settings.DATABASE_OPTIONS:
File "C:\Python27\lib\site-packages\django\utils\functional.py", line 185, in inner
return func(self._wrapped, *args)
AttributeError: 'Settings' object has no attribute 'DATABASE_OPTIONS'
Can someone help me to figure out how to fix it?
Django has a built-in web server that is used for development purposes. The framework supports several database management systems including Microsoft SQL Server.
pyODBC uses the Microsoft ODBC driver for SQL Server.
I got a bit further by switching to the branch mentioned by Michael Baltaks. I used the following commands to uninstall the old incompatible version:
$ pip uninstall sql-server.pyodbc
and then install the git-hub version:
$ pip install https://github.com/avidal/django-pyodbc/archive/django-1.4.zip
This however did not get me all the way to working. I now get the following error:
pyodbc.Error: ('00000', '[00000] [iODBC][Driver Manager]dlopen({FreeTDS}, 6): image not found (0) (SQLDriverConnect)')
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With