Я переделываю некоторые старые SQL запросы, которые были написаны другими, чтобы они теперь выполнялись в среде Node (я больше знаком с JS, чем с SQL), и я снимаю по этому запросу:
UPDATE LWA
SET
DC.ACTINDX = TR00100.ACTINDX,
DC.ACTNUMBR_1 = TR00100.ACTNUMBR_1,
DC.ACTNUMBR_2 = TR00100.ACTNUMBR_2
FROM [LWA].dcr..dcr_accounts LWA
INNER JOIN MCDB..TR00100 ON LWA.ACTINDX = TR00100.ACTINDX
WHERE ACCNUM = '32'
Обратите внимание на эту строку здесь: LWA.ACTINDX = TR00100.ACTINDX
Рассматривая две базы данных, я вижу, что эти два столбца, которые используются для INNER JOIN
, имеют Различные типы. LWA.ACTINDX
относится к типу varchar(15)
, а TR00100.ACTINDX
относится к типу INT
.
Итак, при моем понимании, это не сработает, верно? Другими словами, даже если значения одинаковы, если они разных типов, совпадение никогда не будет найдено. Это правильно, или в этом случае происходит какое-то принуждение типа? И чтобы уточнить, одна база данных - это MariaDB, а другая - SQL Server.