有没有一种简单的方法来克隆Oracle中表的结构?

时间:2008-11-04 02:50:13

标签: java database oracle

如果我有一张表:

CREATE TABLE FRED
(
recordId number(18) primary key,
firstName varchar2(50)
);

是否有一种简单的方法可以将其结构(不是它的数据)克隆到另一个给定名称的表中。基本上我想创建具有完全相同结构但具有不同名称的表,以便我可以在其上执行某些功能。我明显想在代码中这样做。 Java最好,但大多数其他语言应该是相似的。

3 个答案:

答案 0 :(得分:12)

如果您正在寻找一种方法来找到精确的DDL来重新创建表,包括存储子句,您可以使用

select dbms_metadata.get_ddl('TABLE', 'TABLE_NAME', 'SCHEMA_NAME') from dual

here所述。

答案 1 :(得分:6)

CREATE TABLE tablename AS SELECT * FROM orginaltable WHERE 1 = 2;

编辑:WHERE子句禁止任何行符合条件。

答案 2 :(得分:0)

SELECT INTO TARGET_TABLE FROM SOURCE_TABLE;
OR

CREATE TABLE TARGET_TABLE_NAME AS SELECT * FROM SOURCE_TABLE;

如果只想复制结构,则添加Where子句WHERE 1=2

我希望这会有所帮助。