0
的ID
我正在SQL Server 2008的查詢在一個表中是否存在
繼是我的查詢,
CREATE PROCEDURE Usp_Travelready_Admin_AddUser
(
@pLoggedUserId AS INT,
@pMappedUser AS INT
)
AS
BEGIN
SET NOCOUNT ON
IF EXISTS
(
INSERT INTO TESTUSER (Var_LoggedInUser, Var_MappedUSer)
VALUES (@pLoggedUserId, @pMappedUser)
)
ELSE
(
UPDATE TESTUSER
SET Var_MappedUSer = @pMappedUser
WHERE Var_LoggedInUser = @pLoggedUserId
)
SET NOCOUNT OFF
END
其中TestUser用戶表包含2列Var_MappedUSer
和Var_LoggedInUser
我想寫一個存儲過程來更新Var_MappedUSer
如果Var_LoggedInUser
已經存在於表中並且插入用戶(如果它在表中不可用)
我在上面存儲了什麼錯誤程序是什麼?如果
您可以首先檢查表中用戶是否存在,方法是使用var_loggedInUser列上的條件表中的count(*)值。 如果用戶存在,則更新,否則只需插入。 –
@pratikgarg:但是使用'IF EXISTS()'通常**非常受歡迎**,並且可以比使用COUNT(*)'快得多...... –
這也是MERGE的一個好例子,您可能想要檢查,以獲得最佳結果。 – Kahn