Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
无法使用Django oracle12c在数据库中创建表_Django_Python 3.x_Oracle_Django Models_Oracle12c - Fatal编程技术网

无法使用Django oracle12c在数据库中创建表

无法使用Django oracle12c在数据库中创建表,django,python-3.x,oracle,django-models,oracle12c,Django,Python 3.x,Oracle,Django Models,Oracle12c,我正在从事一个大学项目,我打算使用oracle数据库作为后端,我选择使用django作为编程语言。 我已成功地将django与oracle 12c连接,并已安装了cx_oracle。但是当我尝试运行命令时 py manage.py migrate 出现以下错误 Windows PowerShell版权所有(C)微软公司。所有权利 保留的 PS C:\Users\Hp\Desktop\onlinepharma>py manage.py migrate 要执行的操作: 应用所有迁移:管理、身份验证

我正在从事一个大学项目,我打算使用oracle数据库作为后端,我选择使用django作为编程语言。 我已成功地将django与oracle 12c连接,并已安装了cx_oracle。但是当我尝试运行命令时

py manage.py migrate
出现以下错误

Windows PowerShell版权所有(C)微软公司。所有权利 保留的

PS C:\Users\Hp\Desktop\onlinepharma>py manage.py migrate
要执行的操作: 应用所有迁移:管理、身份验证、内容类型、会话、测试运行迁移:应用内容类型。0001_初始…回溯 (最近一次调用上次):文件 “C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site-
packages\django\db\backends\utils.py”,执行中的第83行 返回self.cursor.execute(sql)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\oracle\base.py”, 第513行,执行中 返回self.cursor.execute(查询,self.param_生成器(params))cx_Oracle.DatabaseError:ORA-00955:名称已由 现有对象

上述异常是以下异常的直接原因:

回溯(最近一次调用last):文件“manage.py”,第15行,在 从命令行(sys.argv)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\core\management\uuuuuu init\uuuuu.py”中执行, 第381行,从命令行执行命令 utility.execute()文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\core\management\uuuu init\uuuu.py”, 第375行,执行中 self.fetch_命令(子命令)。从_argv(self.argv)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\core\management\base.py”运行_, 第316行,来自argv的运行中 self.execute(*args,**cmd\u options)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\core\management\base.py”, 执行中的第353行 output=self.handle(*args,**选项)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\core\management\base.py”, 第83行,已包装 res=handle\u func(*args,**kwargs)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\core\management\commands\migrate.py”, 第203行,在句柄中 fake_initial=fake_initial,文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\migrations\executor.py”, 第117行,第1行 state=self.\u迁移\u所有\u转发(state、plan、full\u plan、fake=fake、fake\u initial=fake\u initial)文件 “C:\Users\Hp\AppData\Local\Programs\Python37\lib\site packages\django\db\migrations\executor.py”, 第147行,全部向前移动 state=self.apply\u迁移(state,migration,fake=fake,fake\u initial=fake\u initial)文件 “C:\Users\Hp\AppData\Local\Programs\Python37\lib\site packages\django\db\migrations\executor.py”, 第244行,在应用程序中 state=migration.apply(state,schema_editor)文件“C:\Users\Hp\AppData\Local\Programs\Python37\lib\site packages\django\db\migrations\migration.py”, 第124行中的“应用” 数据库转发(self.app\u标签、模式编辑器、旧状态、项目状态)文件 “C:\Users\Hp\AppData\Local\Programs\Python37\lib\site packages\django\db\migrations\operations\models.py”, 第91行,在数据库中 模式编辑器。创建模式(模型)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\base\schema.py”, 第312行,在创建_模型中 self.execute(sql、params或None)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\base\schema.py”, 第133行,执行中 cursor.execute(sql,params)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\utils.py”, 第100行,执行中 return super().execute(sql,params)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\utils.py”, 第68行,执行中 返回self.\u使用包装器(sql、参数、many=False、executor=self.\u execute)文件执行self.\u “C:\Users\Hp\AppData\Local\Programs\Python37\lib\site packages\django\db\backends\utils.py”, 第77行,使用包装器执行 返回执行器(sql、参数、多个、上下文)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\utils.py”, 第85行,in_执行 返回self.cursor.execute(sql,params)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\utils.py”, 第89行,在退出中 提高dj_exc_值。从exc_值文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\utils.py”进行回溯(回溯), 第83行,in_execute 返回self.cursor.execute(sql)文件“C:\Users\Hp\AppData\Local\Programs\Python\Python37\lib\site packages\django\db\backends\oracle\base.py”, 第513行,执行中 返回self.cursor.execute(查询,self.param\u生成器(params))django.db.utils.DatabaseError:ORA-00955:名称已由 现有对象

这是我的model.py文件

from django.db import models

# Create your models here.
class yoman(models.Model):
text=models.CharField(max_length=200)
但我已经使用sql命令行进行了检查,不存在这样的db表或视图


p、 s:makemigrations命令工作正常,并且migratiosn文件也已创建。

如果编辑以下文件,则可以打印sql查询: “C:\Users\Hp\AppData\Local\Programs\Python37\lib\site packages\django\db\backends\oracle\base.py 在第513行,在调用execute函数add之前:

print(f'query')
重新运行迁移,您可以看到无法运行的sql。请删除或重命名数据库中的表/对象