[英]How to insert into a table with a unique identity INT column as primary key
[英]sql server--> Insert into a single value which is a primary key as well as Identity() into a column of another table
我想从具有主键和Is Identity属性的列中插入记录到另一个表的另一列中。 例如,
我有一个名为“ STU”的表,其中包含以下列:
我有一个名为“ MARK”的表,其中包含以下列:
M3(非空)
CREATE TABLE STU (SNO INT CONSTRAINT PK_SNO PRIMARY KEY (SNO), NAME VARCHAR(25), CLASS VARCHAR(20), SECTION CHAR ); CREATE TABLE MARK(MSNO INT CONSTRAINT FK_MSNO FOREIGN KEY (MSNO) REFERENCES STU(SNO), M1 INT, M2 INT, M3 INT);
就像标题所说的那样,我试图插入1个表中,从其他表中选择值。
INSERT INTO MARK (MSNO, M1, M2, M3) SELECT SNO FROM STU WHERE SNO = '%', '100','100','100';
INSERT INTO MARK (MSNO, M1, M2, M3) SELECT SNO FROM STU WHERE SNO = '%' values ('100','100','100');
这些插入查询都抛出错误
INSERT INTO MARK (MSNO, M1, M2, M3)
SELECT SNO FROM STU WHERE SNO = '%' values ('100','100','100');
我认为您的意图是:
INSERT INTO MARK (MSNO, M1, M2, M3)
SELECT SNO, '100', '100', '100' FROM STU WHERE SNO = '%'
SELECT
语句描述要插入的数据。 它必须是有效的SELECT
语句。 附加VALUES
不能达到目的。
如果需要在插入之前可视化要插入的内容,只需先运行SELECT
查询即可。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.