HOST
を変更する必要があります localhost' or '127.0.0.1
へ SIDはNAME
です 。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': 'xe',
'USER': 'system',
'PASSWORD': 'oracle',
'HOST':'127.0.0.1',
'PORT':'1521'
}
}
今後の参考のために、OracleがSIDではなくサービス名で構成されている場合、構成は次のようになります。
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': '127.0.0.1:1521/service.name',
'USER': 'system',
'PASSWORD': 'oracle',
}
}
DjangoでOracleを使用する際に考慮すべきもう一つのことは、他のユーザー(スキーマ)データベースに接続するときに、db_table
を設定する必要があるということです。 Djangoモデルのメタオプション:
class OracleTable(models.Model):
... fields ...
class Meta:
db_table = '\"OTHERUSER\".\"ORACLETABLE\"'