2

Django 응용 프로그램에 내 국가 (브라질)의 zipcodes에 해당하는 정적 데이터와 관련 거리, 인근 지역, 도시 및 상태.Django에서 데이터베이스에 액세스하는 방법 (ORM이 지원되지 않음)

from django.db import connections 
from django.conf import settings 

try: 
    cursor = connections[settings.CEP_DATABASE_NAME].cursor() 
    .... 

그러나 나는 다음과 같은 오류 얻을 :

나는 이런 식으로 접근하기 위해 노력하고있어

OperationalError: (1049, "Unknown database 'cep'") 

내 settings.py :

CEP_DATABASE_NAME = 'cep' 
DATABASES = { 
    'default': { 
     'NAME': 'hypersaber', 
     'ENGINE': 'django.db.backends.mysql', 
     'USER': 'root', 
     'PASSWORD': 'root', 
     'HOST' : 'localhost', 
     'PORT' : '3306', 
     'OPTIONS' : {"init_command": "SET storage_engine=INNODB"} 
    }, 
    CEP_DATABASE_NAME: { 
     'NAME': CEP_DATABASE_NAME, 
     'ENGINE': 'django.db.backends.mysql', 
     'USER': 'root', 
     'PASSWORD': 'root', 
     'HOST' : 'localhost', 
     'PORT' : '3306', 
     'OPTIONS' : {"init_command": "SET storage_engine=INNODB"} 
    } 
} 

내 MySQL의 모두를 DB 인스턴스가 실행 중입니다.

일부 구성이 누락 되었습니까? 사전에

감사합니다.

답변

3

코드가 괜찮습니다.

분명히 물어야합니다. 데이터베이스가 실제로 localhost에 있습니까?

MySQLdb 모듈에서 예외가 발생했습니다.이 모듈은 장고 스페셜이 잘못되어 있다고 생각하지 않으므로이 모듈이 실제의 낮은 수준의 오류인지 묻습니다.

일반 (비 django) 파이썬 스크립트에서 데이터베이스에 액세스 할 수 있습니까?

+0

내가 말했듯이 "내 MySQL DB 인스턴스가 모두 실행되고 있습니다." 그래서 : 그렇습니다. 좀 더 많은 설정이 필요했다. 내 코드가 "충분"합니까? – Francisco

+0

문제없이 Workbench와 같은 프로그램 (HeidiSQL)을 사용하여 액세스 할 수 있습니다. – Francisco

+0

꽤 이상한 - 전체 스택 추적을 게시 할 수 있습니까? 원인은 cursor() 호출입니까? 또한 여러 데이터베이스가있는 장고 프로젝트를 수행 중이며 django.db.connections를 통해 보조 데이터베이스에 액세스 할 수 있는지 확인하기 위해 약간의 테스트를 수행했습니다. – Julian

관련 문제