2010-04-28 111 views
4

我有一個C#項目與Sql服務器數據庫。
在那個數據庫中,我有一個名爲'Process'的表和名爲'process_name','Full_Name'和'Version'(所有類型:nvarchar(50))的列。
我想編寫一個查詢,只有在表中不存在的情況下,這個查詢纔會添加新進程。
我該怎麼做?
非常感謝,如何僅在SQL Server中不存在記錄的情況下添加記錄?

+0

什麼決定了過程是否已經進入? process_name? – froadie 2010-04-28 14:12:56

+0

是的,這是PK – menacheb 2010-04-28 14:14:28

回答

12
IF NOT EXISTS (SELECT * FROM Process WHERE process_name = 'xxx') 
INSERT INTO Process (process_name, Full_Name, Version) 
VALUES ('xxx', 'yyy', 'zzz') 
+0

謝謝,很好的回答 – menacheb 2010-04-28 14:33:25

1

假設PROCESS_NAME是要檢查的PK:

IF NOT EXISTS(SELECT 1 FROM Process WHERE process_name = @ProcessName) 
    BEGIN 
     -- Process does not already exist, so INSERT 
    END 
相關問題