创建了名为“ACTIVATION_MS”的Oracle方案,然后将其重命名为ACTIVATION_MS_DEV,但标识列的方案名称未更改

unftdfkk  于 2023-05-28  发布在  Oracle
关注(0)|答案(1)|浏览(79)

我正在开发Sping Boot 应用程序,作为数据库,我使用Oracle。使用名称“ACTIVATION_MS”创建架构,然后将其重命名为ACTIVATION_MS_DEV,但标识列的架构名称未更改。
示例:ID NUMBER(38)default“ACTIVATION_MS”.“ISEQ$$_108264”.nextval生成为标识
当我想插入行到表中时,它说“sequence not found”,因为模式名称没有改变。
我怎样才能改变模式名,在序列名之前删除它而不重新创建表?

hc2pp10m

hc2pp10m1#

我怎样才能改变模式名,在序列名之前删除它而不重新创建表?
正如您所发现的,重命名模式只影响顶级对象所有权。它不会调整对象内代码中嵌入的任何内容,因此必须替换标识列、触发器、视图、存储过程或任何其他具有包含所属架构名称的嵌入式PL/SQL的对象。您需要使用新的标识列重新创建表,或者在表中删除并重新创建标识列。

相关问题