【问题标题】:mysql/sql server: SELECT @@identitymysql/sql 服务器:选择 @@identity
【发布时间】:2010-08-19 21:07:58
【问题描述】:

mysql和sql server这两个数据库的作用方式有区别吗:

SELECT @@identity

【问题讨论】:

  • 您有什么特别需要的吗?
  • 永远不要在 SQl 服务器中使用@@identity。请改用 scope_identity() 或输出子句。 @@identity 当 someo 添加一个插入到另一个具有标识的表的触发器时,将破坏您的数据完整性。由于您不能保证这不会发生,因此无论以何种速度,这都是不安全的事情。
  • @HLGEM: Good point! :-)

标签: sql mysql sql-server identity


【解决方案1】:

我更喜欢 SQL Server 中的 SCOPE_IDENTITY() 以避免触发器问题。

【讨论】:

    【解决方案2】:

    是的:因为这似乎不在 ANSI SQL 标准中,所以留给 DBMS 供应商推出他们自己的方法。

    mysql_insert_id() 
    

    【讨论】:

      猜你喜欢
      • 2020-06-04
      • 1970-01-01
      • 2013-03-09
      • 2010-10-23
      • 2016-08-04
      • 2010-10-05
      • 2014-04-16
      • 2013-03-18
      相关资源
      最近更新 更多