django-连接Oracle数据库

  • 依赖
  • 配置
  • 导出Oracle已存在的表模型
      • 三级目录

依赖

  • django版本:3.0.7

pip install Django==3.0.7

  • 安装oracle版本:7.3.0

pip install cx-Oracle==7.3.0

其他方式:
pip安装不成功
链接: whl下载地址.
将文件复制到pip安装的位置,也方便以后找
下载后cmd 到python\Scripts目录下执行:pip install whl文件

配置

配置Oracle数据库查询oracle配置文件tnsnames.ora(数据库部署的地方)
在Django项目/settings.py中修改DATABASES 数据库配置

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.oracle',#oracle驱动
        'NAME': '180.*,**,**:***/test',#数据库ip:端口/service_name
        'USER': 'test',#登录的用户名
        'PASSWORD': 'test',#登录的密码
    }
}

导出Oracle已存在的表模型

使用inspectdb功能连接到Oracle已存在的表

直接执行3语句生成了表数据及成功,失败了执行1,2,3

因为django新版本 连oracle11g版本冲突问题:所以inspectdb命令报错ORA-00904 IDENTITY_COLUMN

解决办法降低django版本链接: 原文.
1.卸载当前django

pip uninstall django

2.安装django1.11.22版本

pip install Django==1.11.22

3.进行inspectdb导入表

python manage.py inspectdb 表名 > 需要导入的py文件

python manage.py inspectdb aaa > AAA.py#导入aaa表模型至AAA.py
python manage.py inspectdb > AAA.py#导入所有表模型至AAA.py

4.卸载当前django1.11.22版本

pip uninstall django

5.重新安装django最新版本

pip install Django

即可完美解决~~~~


三级目录

更多推荐

django-连接Oracle数据库