Обновить столбец varbinary (max) из столбца varchar (max) в той же таблице - PullRequest
1 голос
/ 26 мая 2020

У меня есть таблица volcards, которая содержит столбцы, включая photo_text [varchar(max)] и photo [varbinary(max)].

Приложение, которое собирает данные и фото от пользователя, Filemaker (Claris), который затем заполняет поля сервера SQL с помощью ODB C. Но, очевидно, хотя он не может заполнить двоичное поле в таблице SQL Server, он может заполнить поле Base64 для фотографии. Проприетарному приложению, которое печатает идентификационные карты из этих данных, требуется таблица SQL Server с двоичным полем. Он не может использовать базы данных Filemaker.

Моя цель - иметь возможность запустить команду, которая обновит двоичный столбец 'photo' на основе содержимого Base64 в столбце photo_text.

Я нашел это фрагмент, который показывает результаты, которые мне нужны, но я не знаю, как записать двоичный результат в поле SQL таблицы 'photo'.

SELECT 
    volcards.photo_text, 
    CAST(N'' AS xml).value('xs:base64Binary(sql:column("volcards.photo_text"))', 'varbinary(max)') AS photo
FROM 
    volcards

Спасибо

1 Ответ

0 голосов
/ 10 июля 2020

мой опыт ... мое решение - просто использовать функцию импорта на FM. чтобы показать varbinary

...