回答

收藏

在新行中添加max(value)+1,这可能是个问题吗?

技术问答 技术问答 281 人阅读 | 0 人回复 | 2023-09-12

在SQL Server在表中,我有以下两列:4 x( B7 P- D$ \
RowId    :主键、数字、标识列和自动插入。* y! X& X! |; M" K/ w
MailId    :非密钥、数字、非身份和非自动插入。
* \; v) f% }9 R$ h邮件ID可以重复。如果使用新的。MailId,我将检查max(MailId) 1并将其插入新行,如有重复值,则将其作为参数。
9 H# c$ v4 V/ A( M逻辑看起来不错,但这是个问题。我只是在考虑(但是精度很低),可以有两个不同的新的MailId请求。这会导致逻辑错误吗?例如,当代码检查时max(MailId) 1为101时,我将其存储在变量中,但在下一个插入句执行插入表中的新记录之前。现在在表中max(MailId) 1为102,变量值为101?
, _% g  H) i0 w# C任何建议,我也想控制此错误机会。6 u5 g* c6 N5 {$ S6 m0 ~
编辑: H  e, y  t! z, T
(我没用identity(1,1)因为我必须在其中传递自定义值)
# V- z; |0 d' W& K, ~                                                                0 {& Q' J) ]0 G
    解决方案:
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则