我是一名“偶然”的 DBA,相对缺乏经验并且对这个问题感到困惑。
运行 MS SQL Server 2012。问题在于这个 UPDATE 语句:
UPDATE dbo.tAccts SET
Ticket = 'ARP.ExGE'
, Method = 'smtp'
, AcctOwner = 'r00417819'
, DisplayName = '~AppLight HBSFax-Inactive'
, Destination = 'r00417819@mail.ad.ge.com'
, UpdatedBy = SYSTEM_USER
, UpdatedOn = CAST(GetDate() AS DATE)
FROM dbo.vReclaimable
WHERE OHR_EmpStatus <> 'A'
Run Code Online (Sandbox Code Playgroud)
这应该只更新tAccts 表中由 vReclaimable 视图返回的行。
vReclaimable 视图基于 tAccts 表并返回 tAccts 中行的子集。
当我运行它时,它失败并显示唯一键错误:
(0 row(s) affected)
Msg 2627, Level 14, State 1, Line 67
Violation of UNIQUE KEY constraint 'UQ__tAccounts_DNIS.Method.Destination.Phones'. Cannot …Run Code Online (Sandbox Code Playgroud)