【问题标题】:Sql retreive actual Insert ID [duplicate]Sql检索实际插入ID [重复]
【发布时间】:2016-10-17 18:07:39
【问题描述】:

我有一个保存客户信息的表

[ID] [int] IDENTITY(1,1) NOT NULL, // Primary Key
[Name] [varchar](50) NOT NULL,
[User] [varchar](50) NOT NULL,
[Adrss] [varchar](50) NOT NULL,
[Connected] [int] NOT NULL,

然后我有一个Stored Precedure

 procedure AddClient

    @Name Varchar(50),
    @User Varchar(50),
    @Adrss Varchar(50),
    @Connected Int

    as

        Insert into Clients(
        Name,
        User,
        Adrss,
        Connected)
        Values(
        @Name,
        @User,
        @adrss
        @Connected)

所以字段ID 是自动增量我想在插入时检索它的值我想返回插入位置

注意 1:我正在寻找除Max(ID +1)之外的另一种方法

注意 2:请注意,如果任何行被删除,该值将继续增加,删除的 ID 不会重新生成。

【问题讨论】:

    标签: sql sql-server


    【解决方案1】:

    取决于您使用的数据库,如果是 MySQL,您可以使用 http://php.net/manual/en/mysqli.insert-id.php 用于 PHP

    SCOPE_IDENTITY()可用于SQL-Server

    这是一个很好的答案:https://stackoverflow.com/a/9477528/895169

    【讨论】:

    • 我正在使用 Sql Server
    • @Buffer_z 更新
    猜你喜欢
    • 1970-01-01
    • 2011-07-27
    • 1970-01-01
    • 1970-01-01
    • 2023-04-01
    • 2011-11-02
    • 1970-01-01
    • 1970-01-01
    • 2011-03-28
    相关资源
    最近更新 更多