0
这是非常简单的事情,我看到有很多帖子在网站上,但我无法让它为我工作。从一个表复制到另一个使用sql(sql * plus)
继承人我试图做的:从表“学生”的数据复制。学生包含三列:studentID,姓名和专业。
我需要将此数据复制到另一个名为“dw_student”的表中。
这里是我到目前为止这个:
INSERT INTO dw_student (studentID, name, major, studentKey)
SELECT studentID, name, major, STUDENTSEQ.nextval
FROM student
Studentseq.nextval一个唯一的号码分配给每一行。它到目前为止在我的代码中的其他地方工作。
有什么明显的我做错了吗?
这里是Studentseq.nextval:
create sequence STUDENTSEQ increment by 1 start with 4000;
drop table holdcounter3;
CREATE TABLE holdcounter3
(PKsequence3 number(5),
dataname1 char(4),
CONSTRAINT pk_sequence3 PRIMARY KEY (PKsequence3));
在MSSQL我敢肯定你没有命名所有列,只需使用 'INSERT INTO dw_student SELECT studentID,姓名,专业,STUDENTSEQ.nextval FROM学生' 什么是 “STUDENTSEQ.nextval” ?一个SQL函数?什么是错误信息? – 2013-04-24 20:18:46
我添加了STUDENTSEQ代码来显示它的功能。没有错误信息,只是没有添加。 – user2317112 2013-04-24 20:24:11
@StefanBrendle:你没有*列出INSERT语句的列,但它是良好的编码风格,使你的代码更健壮和可维护。 – 2013-04-24 20:57:27