PostgreSQL到Oracle-我可以更改Oracle中的所有者吗?

PostgreSQL到Oracle-我可以更改Oracle中的所有者吗?,postgresql,oracle11g,schema,Postgresql,Oracle11g,Schema,我正在尝试编辑PostgreSQL模式脚本,并使其在Oracle(Oracle Express)中可执行。在PostgreSQL中,每个创建表下都有以下命令: ALTER TABLE table_name OWNER TO user; 例如,表_名称为appuser,用户为projectX 表已成功创建,但出现错误:ORA-01735:ALTER table选项无效 我还在我的方案(projectX)中创建了另一个用户,但错误仍然存在。所以我很困惑。该命令是否将表名所有者更改为用户;甚至存在于

我正在尝试编辑PostgreSQL模式脚本,并使其在Oracle(Oracle Express)中可执行。在PostgreSQL中,每个创建表下都有以下命令:

ALTER TABLE table_name OWNER TO user;
例如,表_名称为appuser,用户为projectX

表已成功创建,但出现错误:ORA-01735:ALTER table选项无效


我还在我的方案(projectX)中创建了另一个用户,但错误仍然存在。所以我很困惑。该命令是否将表名所有者更改为用户;甚至存在于Oracle数据库中?

不,这是不可能的。无法在Oracle中更改表的所有者。Oracle中所有有效的
ALTER
语句都记录在手册中:唯一的方法是删除表并将其重新创建为新的所有者。(而且,在Postgres中,您根本不需要这一行)。尝试在不同的数据库上逐字运行DDL脚本通常也不是移植模式的好方法。我很惊讶它能工作到可以运行CREATETABLE语句的程度,因为数据类型名称在不同的数据库中变化的频率是如此之高。非常感谢!我没有创建postgreSQL模式。当我导出模式时,“altertableownerto”可能已经生成了postreSQL本身:)不,这是不可能的。无法在Oracle中更改表的所有者。Oracle中所有有效的
ALTER
语句都记录在手册中:唯一的方法是删除表并将其重新创建为新的所有者。(而且,在Postgres中,您根本不需要这一行)。尝试在不同的数据库上逐字运行DDL脚本通常也不是移植模式的好方法。我很惊讶它能工作到可以运行CREATETABLE语句的程度,因为数据类型名称在不同的数据库中变化的频率是如此之高。非常感谢!我没有创建postgreSQL模式。当我导出模式时,“altertableowner to”可能已经生成了postreSQL本身:)