日期:2014-05-17 浏览次数:20896 次
INSERT INTO NEWTABLE(SELECT 1,DATETIME,temp_1 FROM OLDTABLE ); INSERT INTO NEWTABLE(SELECT 2,DATETIME,temp_2 FROM OLDTABLE ); ... INSERT INTO NEWTABLE(SELECT 200,DATETIME,temp_200 FROM OLDTABLE );
------解决方案--------------------
方法2存储过程的代码,其中TEST表为你的老表,TEST2是你建立的新表
TEST2的建表语句为CREATE TABLE TEST2(DATETIME DATE,ROOM NUMBER,TEMP VARCHAR2(20))
--存储过程代码
CREATE OR REPLACE PROCEDURE TEST99 IS
I INTEGER;
STRTEMP VARCHAR2(20);
STRTEMP1 VARCHAR2(20);
STRSQL VARCHAR2(4000);
BEGIN
STRTEMP:='TEMP_';
I:=1;
WHILE I<201 LOOP
BEGIN
STRTEMP1:=STRTEMP||I;
STRSQL:='INSERT INTO TEST2(SELECT DATETIME,'||I||','||STRTEMP1||' FROM TEST)';
EXECUTE IMMEDIATE STRSQL;
I:=I+1;
END;
END LOOP;
COMMIT;
END;