【问题标题】:Stored Procedure for copying data from one table to another将数据从一个表复制到另一个表的存储过程
【发布时间】:2010-12-22 23:53:55
【问题描述】:

我现在有 成对的表格,格式为 TABLETABLE_TWIN

  • TABLE 是主表,有很多数据
  • TABLE_TWIN 是一个表,字段完全相同,但数据很少(不同的数据)

现在我想使用存储过程将所有行从TABLE_TWIN 复制到TABLE。我有很多这样的表,并且可能希望存储过程将表名作为参数,以便我可以对每个表对使用相同的过程。我不想写冗长的INSERT 语句,因为这些表每个都有大约 50 个属性。

我不擅长 PL/SQL,所以我需要一些帮助。

谢谢!

【问题讨论】:

    标签: oracle stored-procedures plsql


    【解决方案1】:

    SQL 没那么长……但如果你更喜欢过程,这里是:

    create or replace procedure table_copy(
      p_tab_from varchar2,
      p_tab_to   varchar2)
    is
    begin
      execute immediate 'insert into '||p_tab_to||' (select * from '||p_tab_from||')';
    end;
    

    【讨论】:

      【解决方案2】:
      insert into table_twin (select * from table) 
      

      应该这样做

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-16
        • 2021-02-10
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-29
        • 2012-11-24
        • 2020-09-24
        相关资源
        最近更新 更多