2

我的 Django 应用程序中有第二个数据库,其中充满了与我的国家(巴西)和相关街道、社区、城市和州的邮政编码相当的静态数据。

我正在尝试像这样访问它:

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

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

但我收到以下错误:

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

我的设置.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 数据库实例都已启动并正在运行。

我错过了一些配置吗?

提前致谢。

4

1 回答 1

3

你的代码对我来说看起来不错。

我不得不问一个显而易见的问题:该数据库是否真的存在于本地主机上?

这是 MySQLdb 模块抛出的异常,这让我认为这里没有任何特定于 django 的错误,这就是为什么我问它是否只是一个真正的低级错误。

您可以从常规(非 django)python 脚本访问数据库吗?

于 2012-07-11T21:58:39.397 回答