В настоящее время я пытаюсь получить модели Django (версия 2.1.5) из существующей базы данных Oracle 11 с помощью python manage.py inspectdb, но эта ошибка все еще возникает:
Unable to inspect table table_name
The error was: ORA-00904: "IDENTITY_COLUMN": invalid identifier
Я пытался использовать разные Djangos. Пример. с 2.0 ошибка не возникала, но текст для моделей не создавался. Другие вопросы из этой темы здесь, на SO, не помогли.
Основываясь на этом ссылка на сайт, я думаю, что ошибка возникает из-за того, что у меня нет первичного ключа в таблице, но, поскольку я не уверен, я не хочу вносить какие-либо изменения в существующую базу данных.
Кто-нибудь решил эту проблему?






У меня была такая же проблема, и я решил сделать это:
# database configuration settings.py
# 'oracle': {
# 'ENGINE': 'django.db.backends.oracle',
# 'NAME': 'host:port/service',
# 'USER': 'database_user',
# 'PASSWORD': 'database_password',
# }
pip uninstall django
pip install Django==1.11.22
cd <django application>
python manage.py inspectdb --database oracle <table name> > oraclemodel.py
pip uninstall django
pip install Django==2.2.4
Вы можете сохранить файл дампа своей базы данных, а затем попробовать решение по ссылке, и если вы считаете, что что-то испортили, вы можете вернуть состояние своей базы данных из файла дампа.