2014-06-24 6 views
0

내가 문제 manage.py dbshell/loaddata 파이썬을 통해 SQL Server 데이터베이스에 연결하는 데 문제가 있습니다.문제 manage.py dbshell/loaddata

이 나는 ​​여기에서 FreeTDS를, 인 unixODBC pyodbc (3.0.7)와 장고 - pyodbc 우분투에 설치 해요 : https://github.com/lionheart/django-pyodbc/

내가 성공적으로 syncdb과 한국 마이그레이션을 실행할 수 있습니다.

[IM002][unixODBC][Driver Manager]Data source name not found, and no default driver specified 
[ISQL]ERROR: Could not SQLConnect 

내가 ISQL 및 TSQL을 사용하여 명령 줄에서 연결할 수 있습니다 : 나는 dbshell 또는 loaddata를 실행하려고하면 그러나,이 오류가 발생합니다. 내가 누락 된 것에 대한 아이디어가 있습니까?

답변

0

그래서 문제를 발견했습니다. 당신이 dbshell 또는 loaddata를 사용하려면

, 당신은 단지 호스트 대신 명명 된 DSN을 사용해야합니다. /etc/freetds.conf, /etc/odbcinst.ini 및 /etc/odbc.ini에 올바르게 설치 했으므로 tsql과 isql이 작동합니다.

나는 settings.py에서이 기본 데이터베이스를 사용했다 : 당신은 첫 번째 (깨진) 예는 'HOST'를 사용하여 알 수

'ENGINE': 'django_pyodbc', 
    'NAME': 'db_name', 
    'USER': 'user_name', 
    'PASSWORD': 'pw', 
    'PORT': '1433', 
    'OPTIONS': { 
     'host_is_server': True, 
     'dsn': 'dsn_name', 
     'autocommit': True, 
     'unicode_results': True, 
     'extra_params': 'tds_version=7.2' 
    }, 

:

'ENGINE': 'django_pyodbc', 
    'NAME': 'db_name', 
    'USER': 'user_name', 
    'PASSWORD': 'pw', 
    'HOST': 'hostname.domain.com,1433', 
    'PORT': '1433', 
    'OPTIONS': { 
     'host_is_server': True, 
     'autocommit': True, 
     'unicode_results': True, 
     'extra_params': 'tds_version=7.2' 
    }, 

내가로 변경했다 . 난 - http://www.freetds.org/userguide/choosingtdsprotocol.htm : 제 (작업) 예 OPTIONS '아래'DSN ' "

+0

을 사용하는 반면, I는 페이지 당 7.2 8.0 TDS 버전 변경 SQL Serv에서 작동하는지 확인할 수도 있습니다. 2012 년 및 2014 년 – FlipperPA