为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

qq_花开花谢_0 2018-12-07 05:24:13
有多个表,所有的数据都来自另一个数据库,为了和目标数据库里的数据一致,所有的表的主键不是“自增长类型”。 现在我要问。 同样的表结构要用于其它的项目上,表的主键就应该是“自增长”的。 有没有一种办法,让主键 不为 “自增长”,当插入的时候不指定ID时则取最大主键值+1,如果插入数据里已指定主键ID值时,则直接写入表中  
查看完整描述

7 回答

?
慕码人8056858

TA贡献1803条经验 获得超6个赞

开排他事务

select max(id) from table_name

然后insert

提交事务

查看完整回答
反对 回复 2019-01-07
?
繁星点点滴滴

TA贡献1803条经验 获得超3个赞

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

查看完整回答
反对 回复 2019-01-07
?
万千封印

TA贡献1891条经验 获得超3个赞

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

查看完整回答
反对 回复 2019-01-07
?
梵蒂冈之花

TA贡献1900条经验 获得超5个赞

把字段设置为自增吧,自增字段也是可写的,如果写入已有的标识时把数据库的"开启标识写入"开起来就可以了,代码:

SET IDENTITY_INSERT [ database_name . [ schema_name ] . ] table { ON | OFF }
查看完整回答
反对 回复 2019-01-07
  • 7 回答
  • 0 关注
  • 556 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信