2

次のように私のテーブル構造、

CREATE TABLE tbl_Info
(
    [SSEID]         BIGINT              NOT NULL    IDENTITY(1,1),
    [ShortenKey]    AS ConvertToBase([SSEID]),
    [Title]         VARCHAR(500)        NULL,       
)

ConvertToBase次のように機能し、

CREATE FUNCTION ConvertToBase(@Number BIGINT)
RETURNS VARCHAR(15)
AS 
BEGIN
      // implementation
END

spでINSERTクエリを実行した後、生成された[ShortenKey]値を取得する必要があります。これを行う方法 ?

4

3 に答える 3

5

OUTPUT句を使用しますか?

INSERT tbl_Info (Title)
OUTPUT INSERTED.ShortenKey
VALUES ('new title')

注:正しく読んだ場合、MSDNによると計算列では機能しない可能性があります。

于 2011-06-15T08:21:41.753 に答える
3

SCOPE_IDENTITY新しい ID 値を取得するために使用します。次に、新しく挿入された行をクエリします。

SELECT ShortenKey
FROM dbo.tbl_Info
WHERE SSEID = SCOPE_IDENTITY()
于 2011-06-15T08:39:46.203 に答える
1
SELECT ShortenKey
FROM dbo.tbl_Info
WHERE SSEID = SCOPE_IDENTITY()
于 2012-03-05T10:49:19.913 に答える