已存在我有一個表中的主數據庫稱爲ERTdata
其中存儲的數據庫名稱,我在這個數據庫中的列Id, DatabaseName, Initiatedby, CreatedDate
後。SQL - 插入到表格如果sys.databases中
我有列Id, DatabaseName, Initiatedby, CreatedDate
稱爲DatabasesOnServer
另一個表。
這是我的查詢:
INSERT INTO DatabaseOnServer (Id, DatabaseName, Initiatedby,CreatedDate)
SELECT Id, DatabaseName, Initiatedby, CreatedDate
FROM ERTdata
WHERE EXISTS (SELECT 1
FROM sys.databases
WHERE name = ERTdata.DatabaseName)
上述查詢檢查服務器上已經有特定的數據庫,如果同樣存在於ERTdata,將其插入到表DatabaseOnServer。
的問題是它會導致重複。我們怎樣才能將其插入只有當它不存在,如果該數據庫不存在服務器上刪除DatabaseOnServer
的條目。
謝謝提前。
你好lad2025,查詢工作。但是,如果數據庫被刪除,如何從DatabaseOnServer刪除記錄。 示例:我有一個名爲ABC的數據庫,名稱和詳細信息被插入到DatabaseOnServer上。我從服務器刪除ABC,並且該條目仍存在於DatabaseOnServer中。該記錄應被刪除 – Tango
@Tango這應該是全新的問題。如果你需要更多的邏輯使用'MERGE'。 – lad2025
@Tango請不要以這種方式改變問題。如果您的原始問題已解決,請將其標記爲已接受並提出新問題。 – lad2025