2017-11-14 5 views
0

非常に簡単な作業が必要です。レコードがテーブルに存在しない場合にのみ、INSERT INTOクエリを実行します。 多くのヒントがありましたが、SQL Access97で動作するものはありません。Access97:INSERT INTOが存在しない場合

例:

IF NOT EXISTS (SELECT 1 FROM Users WHERE FirstName = 'John' AND LastName = 'Smith') 
BEGIN 
    INSERT INTO Users (FirstName, LastName) VALUES ('John', 'Smith') 
END 

IF NOT EXISTSが有効でないため、これは動作しません。

1つのSQL句でこれを行う正しい方法は何ですか?

答えて

2

あなたはinsert . .. selectにそれを構築することができます:

INSERT INTO Users (FirstName, LastName) 
    SELECT TOP 1 'John', 'Smith' 
    FROM Users 
    WHERE NOT EXISTS (SELECT 1 FROM Users WHERE FirstName = 'John' AND LastName = 'Smith'); 
関連する問題