主键不是“自增长”如果何添加记录?

有多个表,所有的数据都来自另一个数据库,为了和目标数据库里的数据一致,所有的表的主键不是“自增长类型”。

现在我要问。

同样的表结构要用于其它的项目上,表的主键就应该是“自增长”的。

有没有一种办法,让主键 不为 “自增长”,当插入的时候不指定ID时则取最大主键值+1,如果插入数据里已指定主键ID值时,则直接写入表中

 

qq_花开花谢_0
浏览 557回答 7
7回答

慕码人8056858

开排他事务 select max(id) from table_name 然后insert 提交事务

繁星点点滴滴

这个可以的,写个存储过程就行

万千封印

有自增长为什么一定要自己写呢?

梵蒂冈之花

把字段设置为自增吧,自增字段也是可写的,如果写入已有的标识时把数据库的"开启标识写入"开起来就可以了,代码: SET IDENTITY_INSERT [ database_name . [ schema_name ] . ] table { ON | OFF }
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

SQL Server