Я пытаюсь создать триггер аудита, вставляя данные blob как longtext datatype.Audit Trigger, Insert Blob As LongText
Когда я использую select, я вижу содержимое изображения, но когда я вставляю его в том же формате, он отображается как пустой.
Работы: данные отображения необработанного изображения
select cast(my_image as char) as data from MyTable
не работает: столбец данных выглядит пустой (0Byte)
insert into MyAuditTable (data) values (cast(NEW.my_image as char))
обновление: 12 сентября Я попытался передать его через функцию, надеясь явно указать тип, который он примет, но не повезло там либо
CREATE FUNCTION `BLOB2TXT`(dablob LONGBLOB) RETURNS LONGTEXT
NO SQL
DETERMINISTIC
BEGIN
RETURN CAST(dablob AS CHAR CHARACTER SET utf8);
END
Я опубликовал свой проект на github, если кто-то хочет взглянуть или захочет использовать то, что у меня есть. Вы всегда можете :)
https://github.com/hotmit/mysql-sp-audit
Сейчас единственное, что дает мне некоторую надежду на то, является Hex (BLOB), но когда я UNHEX() данные не читаемыми.
Вы попробовали его с CONVERT()? – catalinetu
Я пробовал использовать, конвертировать, вставлять как есть. Все они заканчиваются пустым. –
проясните, какая таблица представляет MyTable и какие поля - дата, my_image в вашем проекте github? какой файл посмотреть? –