我建立了一个表YG,字段如下:id int(4) 主键
name varChar(10)
sex char(2)
age int(4)
bmbh varChar(10)我把id的标识设置为“是”,标识种子设置为“1”,标识递增量设置为“1”。然后我打开查询分析器,先后输入了下面两条SQL语句,结果都出错,请见下:1:
insert yg(id,name,age,sex,bmbh) values((select max(id) from yg)+1,'pm','25','m','bm1')
这时的出错信息是:服务器: 消息 1046,级别 15,状态 1,行 1
在此上下文中不允许使用子查询。只允许使用标量表达式。
2:
insert into yg(id,name,age,sex,bmbh) values(1,'pm','25','m','bm1')
这时的出错信息是:服务器: 消息 544,级别 16,状态 1,行 1
当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'yg' 中的标识列插入显式值。请问上面1、2哪里有问题啊?谢谢大家!
这样
insert yg(name,age,sex,bmbh) values('pm','25','m','bm1')
insert into yg(id,name,age,sex,bmbh) values(1,'pm','25','m','bm1')
set IDENTITY_INSERT yg off
即:insert into yg(name,age,sex,bmbh) values('pm','25','m','bm1')
我试着用下面的方法,却又出错了!见下:
insert yg(id,name,age,sex,bmbh) values(2,'pm','25','m','bm1')服务器: 消息 544,级别 16,状态 1,行 1
当 IDENTITY_INSERT 设置为 OFF 时,不能向表 'yg' 中的标识列插入显式值。请问我想添加一条ID=2的记录又该怎么办呢?
谢谢!
insert into yg(id,name,age,sex,bmbh) values(2,'pm','25','m','bm1')
set IDENTITY_INSERT yg off
我的拙见LZ你怎么会有这样的需求呢