插入一条记录后返回插入的时间戳

dmi*_*er1 2 sql-server sql-server-2012

我感觉这应该是一个很简单的问题。我想要做的就是返回刚刚插入的条目的时间戳,但在同一个调用中。我在搜索中所能找到的只是返回身份列(id)。但我只需要时间戳。这是我的存储过程:

ALTER PROCEDURE [dbo].[insertLabelHistory]
    @itemID         VARCHAR(50)
    ,@enterType     INT
    ,@authID        INT = NULL
AS
BEGIN
    SET NOCOUNT ON;

    INSERT INTO LABEL_CHECK_HIST
    (ITEM_ID, ENTERED_DATE, ENTER_TYPE, AUTH_ID)
    VALUES
    (@itemID, CURRENT_TIMESTAMP ,@enterType, @authID)
END
Run Code Online (Sandbox Code Playgroud)

这是在 SQL Server 2012 中。

Dav*_*oft 5

使用OUTPUT子句,例如

INSERT INTO LABEL_CHECK_HIST (ITEM_ID, ENTERED_DATE, ENTER_TYPE, AUTH_ID)
OUTPUT inserted.ENTERED_DATE
VALUES (@itemID, CURRENT_TIMESTAMP ,@enterType, @authID)
Run Code Online (Sandbox Code Playgroud)