获取不被占用的ID Sql Server 2005中,已经存在多条记录现在要生成一个ID,这个ID不存在在数据库中,然后进行相关操作后插入数据库。应该怎么做? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Max(id)+1 OK? 用sql获取 表里的最大ID 在加1也可以 把字段换成 GUID 类型 GUID是独一无二的 全球唯一标示GUID 和int是一样的用法 唯一不同的是 数据库默认要newid() 程序中要GUID guid = GUid.newguid().你可以估个 百度一下这个GUID 读取最大值select max() 也不保险 建议 用 GUID - - 我晕那你就生成一个ID 准备插入数据前把这个ID在数据库中检索一下看有没有select count(*) from table wher id=你生成的 先进数据库,然后再得到它的ID。这就OK了,因为是自增字段,所以要先写才能产生ID,得到ID后,再操作其它的。如果说,一定要先其它的,然后才写进数据库,不如我建议这样,写一个事务,(先进数据库,再做其它的,)如果,事务有错误,就全部撒消,如果成功,就全部写入 随即生成一个ID吧,。。插入数据之前判断下这个ID是否存在 ID已经定义了不是很好办么~不大明白你的问题,我觉得检索一下有没有这个id在数据库就可以做了~~~ declare new_id intselect new_id = (select max(id)+1 from table) GUID是最好的然后就是你自己写算法 母版页嵌套问题? 取得数据库表自动编号字段名称 请求大家帮忙做个测试,谢谢了! 点击按钮后,为什么数据库中的hits列得不到更新? 求一获取图片的正则表达式 请教一个关于DataGridItem的问题! 请问页面自动跳转是怎么实现的 为何更改IIS主目录之后,aspx文件访问不正常? 怎样让一个table的宽度或高度不小于某个固定的值? 水晶报表问题:未能获得免费许可证!! 页面的DropDownList的信息传递到另一个页面的DropDownList中 VS2005中platform 在哪里有?在线等
先进数据库,然后再得到它的ID。这就OK了,因为是自增字段,所以要先写才能产生ID,
得到ID后,再操作其它的。如果说,一定要先其它的,然后才写进数据库,不如我建议这样,写一个事务,(先进数据库,再做其它的,)如果,事务有错误,就全部撒消,如果成功,就全部写入
不大明白你的问题,我觉得检索一下有没有这个id在数据库就可以做了~~~
declare new_id int
select new_id = (select max(id)+1 from table)
然后就是你自己写算法