我正在将SQL Server数据库架构迁移到MySQL。 SQL Server上的某些表有一个rowversion类型的列。这是在首次插入行时设置的整数值,然后每次更新行的任何列时再次设置。该数字只会递增。
我们利用它来检查并发性问题。因此,当插入到服务器时,我们可以检查传入值是否与当前存储值不同。如果是这样,那么自从导致此插入的读取以来,该行已被更新。然后我们可以拒绝更新,因为它基于过时的值。乐观并发。
在MySQL中是否存在对我们相同的等价物?
答案 0 :(得分:5)
MySQL TIMESTAMP数据类型具有乐观并发测试所需的自动初始化和自动更新功能。例如,请参阅http://www.mysqltutorial.org/mysql-timestamp.aspx
答案 1 :(得分:1)
MySQL TIMESTAMP数据类型可能具有初始化和自动更新功能,但是该数据类型是基于日期的,如果分辨率不在ns维度中,则将出现问题。即使使用ns分辨率,仍然可能会出现问题...因此答案实际上是否。