2

私の Django アプリケーションには 2 番目のデータベースがあり、このデータベースには、私の国 (ブラジル) の郵便番号に相当するものと、関連する通り、近隣、都市、および州に関する静的データが格納されています。

私は次のようにアクセスしようとしています:

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 インスタンスは両方とも稼働しています。

いくつかの構成がありませんか?

前もって感謝します。

4

1 に答える 1

3

あなたのコードは私にはうまく見えます。

明白なことを尋ねなければなりません: そのデータベースは実際に localhost に存在しますか?

これは、MySQLdb モジュールからスローされた例外です。これにより、django 固有の問題は何もないと思われます。これが、実際の低レベルのエラーであるかどうかを尋ねる理由です。

通常の (django 以外の) Python スクリプトからデータベースにアクセスできますか?

于 2012-07-11T21:58:39.397 に答える