insert 表paper
paper结构:
id int (4) //Identity设为Yes Identity Seed 设为1 Identity Increment 设为 1
teacherName varchar(15),
courseName varchar(15),
numSingle int,
pointSingle int,
numMulti int,
pointMulti int,
numEssay int,
pointEssay int,
numNoun int,
pointNoun int,
numTruefalse int,
pointTruefalse int,
test intCREATE PROCEDURE teacher_insert_paper
@teacherName varchar(15),
@courseName varchar(15),
@numSingle int,
@pointSingle int,
@numMulti int,
@pointMulti int,
@numEssay int,
@pointEssay int,
@numNoun int,
@pointNoun int,
@numTruefalse int,
@pointTruefalse int,
@test int
AS
BEGIN
insert into paper
values(@teacherName,@courseName,@numSingle,@pointSingle,@numMulti,@pointMulti,@numEssay,@pointEssay,@numNoun,@pointNoun,@numTruefalse,@pointTruefalse,@test)
END
GO
执行后报错 Error8101:仅当使用了列的列表,并且IDENTITY_INSERT为ON时,才能在表‘paper’中为标志列指定显示值。
paper结构:
id int (4) //Identity设为Yes Identity Seed 设为1 Identity Increment 设为 1
teacherName varchar(15),
courseName varchar(15),
numSingle int,
pointSingle int,
numMulti int,
pointMulti int,
numEssay int,
pointEssay int,
numNoun int,
pointNoun int,
numTruefalse int,
pointTruefalse int,
test intCREATE PROCEDURE teacher_insert_paper
@teacherName varchar(15),
@courseName varchar(15),
@numSingle int,
@pointSingle int,
@numMulti int,
@pointMulti int,
@numEssay int,
@pointEssay int,
@numNoun int,
@pointNoun int,
@numTruefalse int,
@pointTruefalse int,
@test int
AS
BEGIN
insert into paper
values(@teacherName,@courseName,@numSingle,@pointSingle,@numMulti,@pointMulti,@numEssay,@pointEssay,@numNoun,@pointNoun,@numTruefalse,@pointTruefalse,@test)
END
GO
执行后报错 Error8101:仅当使用了列的列表,并且IDENTITY_INSERT为ON时,才能在表‘paper’中为标志列指定显示值。
insert语句
set identity_insert 表名 off因为你插入了标识列,就是自动增长的列
--前面加上
SET IDENTITY_INSERT ON
values(@teacherName,@courseName,@numSingle,@pointSingle,@numMulti,@pointMulti,@numEssay,@pointEssay,@numNoun,@pointNoun,@numTruefalse,@pointTruefalse,@test)
values(teacherName,courseName,numSingle,pointSingle,numMulti,pointMulti,numEssay,pointEssay,numNoun,pointNoun,numTruefalse,pointTruefalse,test)