我很困惑,因为oracledb的文档明确指出12.1以后的所有版本都应该正常工作。有人能给我解释一下哪里出错了吗?错误是在我尝试创建迁移时产生的。我引用的文档是:oracledb docs
下面是错误:
django.db.utils.NotSupportedError: Oracle 19 or later is required (found 12.2.0.1.0).
这是www.example.com中的数据库字符串settings.py:
from pathlib import Path
import sys
import oracledb
oracledb.version = "8.3.0"
sys.modules["cx_Oracle"] = oracledb
#the above line was added because of error (django.core.exceptions.ImproperlyConfigured: Error
#loading cx_Oracle module: No module named 'cx_Oracle')
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.oracle',
'NAME': (
'(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=server123)(PORT=1521))'
'(CONNECT_DATA=(SERVICE_NAME=server.domain.com)))'
),
'USER': 'user123',
'PASSWORD': 'password',
'OPTIONS': {
'threaded': True,
},
}
}
1条答案
按热度按时间46scxncf1#
这是Django的东西。来自docs.djangoproject.com/en/4.1/ref/databases/#oracle-notes:
“Django支持Oracle数据库服务器版本19c和更高版本.”
另请参阅Django 4.0发行说明
已删除对Oracle 12.2和18c的支持。
如果无法升级DB,请尝试旧版本的Django