у меня 3 стола
Tabledocs2 LogTable Tabledocs1
Я пытаюсь вставить в Tabledocs2 из Tabledocs1, а не из Tabledocs2.
LogTable — это промежуточная таблица, которая содержит столбцы Tabledocs1 и Tabledocs2.
Преобразование в случае не улавливает/обрабатывает эту ошибку. "преобразование не удалось при преобразовании значения varchar "Ошибка:" в тип данных int"
PRINT 'INSERTING FROM Tabledocs2 INTO Tabledocs1'
INSERT INTO Tabledocs1 (Log_id, document_name , document_icon , document_body )
SELECT CONVERT(INT, CASE WHEN IsNumeric(CONVERT(VARCHAR(12),ID)) = 1 then CONVERT(VARCHAR(12), ID) else 0 End) as int , document_name , document_icon , document_body
FROM LogTable
INNER JOIN Tabledocs1
ON LogTable.detail_ID = Tabledocs1.detail_ID
AND log_ID = @LogID
EXCEPT
(SELECT Log_id, document_name , document_icon , document_body FROM Tabledocs2)--To Avoid duplicates