首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django与Oracle数据库11g

Django与Oracle数据库11g
EN

Stack Overflow用户
提问于 2018-03-27 23:25:09
回答 2查看 574关注 0票数 0

我是python语言和django的新手。我需要将django连接到oracle数据库11g,我已经导入了cx_oracle库,并使用即时客户端来连接oracle和django,但是当我运行命令manage inspectdb > models.py时。我收到错误,因为models.py中的列标识符无效。我怎么才能解决它。我连接的模式中只有2个表?

EN

回答 2

Stack Overflow用户

发布于 2018-03-28 02:32:24

"Invalid column“表示您指定的列名在这些表中都不存在,或者您拼错了它的名称。

例如:

代码语言:javascript
复制
SQL> desc dept
 Name                                      
 ----------------------------------------- 
 DEPTNO                                   
 DNAME
 LOC

SQL> select ndame from dept;              --> misspelled column name
select ndame from dept
       *
ERROR at line 1:
ORA-00904: "NDAME": invalid identifier


SQL> select imaginary_column from dept;   --> non-existent column name
select imaginary_column from dept
       *
ERROR at line 1:
ORA-00904: "IMAGINARY_COLUMN": invalid identifier


SQL>

此外,请注意字母大小写,特别是如果您创建的表/列使用大小写混合,并将这些名称放在双引号中(如果是这样,我建议您删除表并重新创建它们,不要使用双引号。如果您不能做到这一点,您将不得不使用双引号和完全相同的字母大小写来引用它们)。

所以-检查列名并将它们与您的查询进行比较。如果你仍然不能让它工作,发布一些更多的信息-表描述和你的代码。

票数 0
EN

Stack Overflow用户

发布于 2019-02-27 21:30:57

我也遇到过同样的问题。问题是Django希望您的表有主键(ID),所以当您的表没有键时,它会返回无效的列标识符。

https://docs.djangoproject.com/en/2.1/topics/db/models/#automatic-primary-key-fields

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49516851

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档