这事情说起来话就长了。
不过你既然这么问了,我就先提供一个简单的非并发方案,你先知道了简单的方案,然后才自己去根据实际生产情况,找寻更好的方案。
Declare @Id
Select @id=max(id) from table where mfg_lot='4225121'
set @id=@id+1
Insert into table ....
简单的就是这样而已。
当然你要写在代码中也行。
一旦考虑到并发冲突,事情就开始麻烦了,这就得麻烦你搜索一下数据库并发更新等方面的文章看一下。
插入参数通过查询得到?哈哈
用SQL实现,表2的ID一定不是主键吧。因为需要知道MFG_LOT_NO才可以知道ID的值,让ID可以为空,但是MFG_LOT_NO基本上不能为空,写一个触发器,表二新增完或者修改完MFG_LOT_NO的字段之后触发进行修改ID列的值
SQL查询的方式实现不了,只能重新用临时表的方式来实现了
调用 存储过程
直接用newid()