因为同一条记录的另外一个字段的值跟它的id号有关联,即插入一条记录时,必须先知道将自动生成的id号是多少?
断号无所谓,只是想插入的记录的id是最后一条记录加一.
断号无所谓,只是想插入的记录的id是最后一条记录加一.
解决方案 »
- 如何设置有条件的约束
- 如何恢复数据库数据
- SQL UPDATA语句问题
- 进来就有分 SQLServer 2000 插入大数据量 超时已过期
- 菜鸟问题,想到我头疼的问题
- 问个 简单的 sql 条件
- 初级送分:查询返回10行到20行之间的数据的条件怎么写
- 事件探查器 跟踪报错
- 局域网中一台机器运行SQL Server,另一台机器VB编程调试,老有错误,高手来看看
- sql="select office ,count(*) as num1 from bank Group by office order by num1 desc "
- 取字符串xxxx*yyyy*zzzz*qqqqq
- 往数据库里添加数据,需要进行20次循环,可是每循环5次,就中止了,为什么???
select @@identity
就可以知道要插入的值是什么如果非要强行改变identity属性的字段的值可以:
SET IDENTITY_INSERT 你的表名 ON
insert into你的表名(id,name) select max(id)+1,'very easy' from你的表名;
SET IDENTITY_INSERT 你的表名 OFF
Yang_(扬帆破浪),能留下您的QQ或msn吗?希望可以请教您。
[email protected]
insert into你的表名(id,name) select max(id)+1,'very easy' from你的表名;
SET IDENTITY_INSERT 你的表名 OFF
如果这样好象自动编号就没什么意义了吧?
insert into table (toid,name) value (id*param,'good')
其中id为自动生成的编号,param实在程序中求出的
dbcc checkident(你的表名,reseed,15) --重新置位你的表中identity屬性的字段,让下一个值从16开始。
要不我可不可以在insert语句后面加一个update语句?这样可以碰到并发问题,不过用触发器好像也不是很容易解决
insert into table1 (toid,name) value (param,'good')在触发器
update table1
set toid=id*toid
from table1,inserted
where table1.id=inserted.id
update table1
set toid=inserted.id*inserted.toid
from table1,inserted
where table1.id=inserted.id