大家好。
我正在使用 JMP 17。我想將資料表中的資料插入或更新到外部資料庫 ssms 中。
目前,我有一個數據表。 我想比較資料表的行。 如果資料庫中不存在資料表的行,則插入到資料庫中,否則如果資料庫中存在,則更新到資料庫中。
我知道SQL有插入或更新功能,但不知道JMP腳本能不能做到。
插入或更新資料的語法或腳本是什麼?
這是 SQL 插入或更新函數
-- Insert or update into Table
MERGE INTO Report.dbo.Table AS target
USING #tempTable AS source
ON
target.logID = source.logID
WHEN MATCHED THEN
UPDATE SET
Value = source.value
WHEN NOT MATCHED THEN
INSERT (ID, ProductName, Time, Value)
VALUES (source.id, source.productname, source.time, source.value);
先致謝
您可以使用 JSL 插入/更新資料庫表,沒有問題。您的語句看起來像是從表格#tempTable 更新report.dbo.table。如果 #tempTable 不是很大,您可以在資料庫中建立此表,然後執行合併腳本。
這是一些未經測試的程式碼,顯示了您需要執行的操作。我很少用過保存資料庫命令;您需要進行實驗才能使其發揮作用。
dt = New Table( "Source Table", Add Rows( 3 ),
New Column( "id", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3] ) ),
New Column( "productname", Character, "Nominal",
Set Values( {"AAAAA", "BBBBB", "CCCCC"} ) ),
New Column( "time", Character, "Nominal",
Set Values( {"7:30", "8:30", "9:30"} ) ),
New Column( "value", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [22, 24, 33] ) )
);
// Copy the table to the database
dt << Save Database( "Connect Dialog", "#tempTable" );
// Create a connection to the database
dbc = create database connection("<CONNECTION-STRING-GOES-HERE></CONNECTION-STRING-GOES-HERE>