由于主键id是自动增长但操作数据有删除行所以id不一定是连号,请问能不能用1条sql插入语句写出要求该插入行的1个列值是当前+该主键id。谢谢
解决方案 »
- GridView相关问题,求高手解答,多谢
- 请大家帮忙看下. 制作上传图片删除时的问题. 急啊!!!
- dataset.table[0]找不到表,但dataset.table["自定义表名"]可以
- 请问谁做过web的批量打印?谢谢
- 我的数据库密码有个&,提示有错误,应该怎么处理?请教
- 这么读xml的节点错了吗?怎么总是第一条数据阿!
- treeview和checkbox出现的怪现象!!!难道是treeview的bug???
- 求正则表达式,取得代码中部分内容。
- 怎么在后台C#里读取window.dialogArguments的值?
- ASP.net 1.1 问题——访问被拒绝
- 谁给我个封装好的 SQLHELPER.DLL?
- 为什么导出来的Excel内容是乱码?看下我的代码吧.
insert into table(abc) values('@@identity+getdate()')
id是自动增长如果当前最大即最后插入是id值是1但是由于操作数据2、3、4已被删除了所以现在要插入的id将是5那么取id最大值和通过存储过程付变量也算不出id值,如果不能在当前插入语句取该id值就只能先插再取id再更新该字段往复多操作了2次数据库
1、建立一个序列
2、取当前日期注意格式,如格式化为 20070608
3、取序列值,然后格式化即:如序列总长度位 8 ,取得的值为23 ,格式化 后为 00000023
4、将格式化的序列值与日期拼接得到 2007060800000023sqlserver应该也是一样的
INSERT INTO table
(name)
VALUES (CONVERT(varchar(8), GETDATE(), 112) + CONVERT(varchar, @@IDENTITY + 1))