Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/linq/3.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
Oracle 将备份表数据还原为旧数据_Oracle_Plsql_Backup - Fatal编程技术网

Oracle 将备份表数据还原为旧数据

Oracle 将备份表数据还原为旧数据,oracle,plsql,backup,Oracle,Plsql,Backup,我在我的表中做了一些更改,我需要备份我使用的表 CREATE TABLE supplier_invoice_rows_backup AS SELECT * FROM supplier_invoice_rows 我进行了更改,需要将数据从供应商发票行\u备份返回到供应商发票行 有什么方法可以做到这一点吗?是的,有!试试下面的mysql代码 RENAME TABLE supplier_invoice_rows_backup TO supplier_invoice_rows; 或者试试oracle

我在我的表中做了一些更改,我需要备份我使用的表

CREATE TABLE supplier_invoice_rows_backup
AS
SELECT * FROM supplier_invoice_rows
我进行了更改,需要将数据从
供应商发票行\u备份
返回到
供应商发票行

有什么方法可以做到这一点吗?

是的,有!试试下面的mysql代码

RENAME TABLE supplier_invoice_rows_backup TO supplier_invoice_rows;
或者试试oracle代码

RENAME supplier_invoice_rows_backup TO supplier_invoice_rows;

重命名表的另一种方法是截断原始表并从“备份”表复制行:

truncate table supplier_invoice_rows;
insert into supplier_invoice_rows (select * from supplier_invoice_rows_backup);
或者干脆把你的原稿翻过来:

drop table supplier_invoice_rows purge;
create table supplier_invoice_rows
as 
select * from supplier_invoice_rows_backup;

或者之前建议的重命名。你对那个建议的回应(“但我想抄袭”)表明你还没有考虑清楚这一点。同一架构中不能有两个同名的表。那么您认为“重命名表供应商\发票\行\备份到供应商\发票\行”的最终结果是什么?

它将仅重命名表?供应商发票行备份到供应商发票行?但是我想将数据从供应商\发票\行\备份到供应商\发票\行?没有自动方式将数据从表复制到表。唯一的方法是将备份表重命名为新表。您可以手动执行此操作,并使用“mysqldump”命令复制每个表的数据。参考号:。我不知道这个命令是否适用于oracle。。。