新しいレコードを挿入してIDを返すためのユーザー定義関数が必要ですが、これは可能ですか?どのようにすればいいですか?レコードを挿入し、SQL UDFでIDを返しますか?
私はinsert文で関数を作成しようとしたが、私は次のエラーを取得しています:
CREATE FUNCTION dbo.GetNewBookingReference()
RETURNS int
AS
BEGIN
INSERT INTO BookingReference
(CreatedTime, CreatedByUserId)
VALUES
(GETDATE()
,10)
RETURN @@IDENTITY
END
:
Invalid use of the side-affecting operator 'INSERT' within a function.
私は、SQL Server 2008の
UPDATEのSQLを使用しています
ありがとう
あなたはあなたに何を持っていますか? –
自分のSQLを追加しました –
ちょうど脇に:@@ IDENTITYの代わりにSCOPE_IDENTITY()を使用することを強くお勧めします - テーブルにトリガがあると、間違ったIDが@@ IDENTITY –