sql >> データベース >  >> RDS >> Sqlserver

@@ IDENTITY、SCOPE_IDENTITY()、OUTPUT、および最後のIDを取得するその他のメソッド

    それはあなたが何をしようとしているのかによります...

    @@ IDENTITY

    値を生成したテーブルに関係なく、また値を生成したステートメントのスコープに関係なく、接続で生成された最後のIDENTITY値を返します。@@ IDENTITYは、現在のセッションでテーブルに入力された最後のID値を返します。 @@ IDENTITYは現在のセッションに制限されており、現在のスコープに制限されていません。たとえば、別のテーブルにIDが作成されるトリガーがテーブルにある場合、それが作成されたトリガーであったとしても、最後に作成されたIDを取得します。

    SCOPE_IDENTITY()

    値を生成したテーブルに関係なく、接続および同じスコープ内のステートメントによって生成された最後のIDENTITY値を返します。SCOPE_IDENTITY()は@@ IDENTITYに似ていますが、値を現在のスコープに制限します。つまり、トリガーまたはユーザー定義関数によって作成されたIDではなく、明示的に作成した最後のID値を返します。

    IDENT_CURRENT()

    値を生成したステートメントの接続とスコープに関係なく、テーブルで生成された最後のIDENTITY値を返します。 IDENT_CURRENTは指定されたテーブルに制限されますが、接続またはスコープによって制限されません。



    1. OracleのSIN()関数

    2. SQLServerで先行ゼロを埋めて数値をフォーマットする

    3. MySQLデータベースに保存されているPHPを実行するにはどうすればよいですか?

    4. MySqlCountは0の値を表示できません