【发布时间】:2019-09-07 00:14:23
【问题描述】:
我正在尝试创建一个脚本来检查一个寄存器是否存在,如果存在,它会删除它并插入一个带有更新数据的新寄存器。 我使用将文件从一个 NAS 复制到另一个 NAS 的程序创建脚本,它非常基本。
到目前为止,我的代码使用以下几行创建了一个脚本:
IF EXISTS (SELECT TOP 1 iDRegister FROM Documents WHERE iDRegister= 123456) BEGIN
DELETE FROM Documents WHERE iDRegister= 123456
END
INSERT INTO Documents (iDRegister, idAPP, idDocType, Batch, BatchUploadDate, UploadDate, Route, idNas, Memo, NroMemo, DocID, ClientID, Folio, PolicyNum, CardNum, ProposalNum, RequirementNum, SolicitacionNum, AuditNum, RejectNum, SentMemo, OccurNum, StampDate, CompanyFund, IsMemo)
VALUES (123456, 10, 1, '1', CONVERT(VARCHAR(50), GETDATE(), 120), '20190416', 'Route\image.TIF', 1, '11111', '', '111111111', '', '11111111111111', '', '', '', '', '', '', '', '', '', '', '', 'NO')
这非常有效,但我必须为 220 万个寄存器做同样的事情。有什么办法可以删除以前的寄存器,如果它存在,然后使用批量插入?
【问题讨论】:
标签: sql sql-server sql-server-2005