Обновить столбец из Base64 в строку (изначально в SQL) - PullRequest
0 голосов
/ 19 ноября 2018

Я пытался понять это уже два дня и буду очень признателен за помощь. Я импортировал данные из CSV, где одно поле содержало HTML-данные, закодированные в base64.

Идея состоит в том, чтобы перебрать каждую строку и запустить FROM_BASE64 для нее.

Как мне структурировать запрос, который:

  1. Циклы по всем линиям
  2. Вызывает FRON_BASE64 для каждой строки
  3. Запускает UPDATE (или аналогичные функции) в той же строке и столбце

Контекст: я использую MariaDB (эквивалент MySQL).

Спасибо за любую помощь!

1 Ответ

0 голосов
/ 19 ноября 2018

Обычно base64 используется для двоичных данных.Вы, вероятно, не должны хранить декодированные данные в том же столбце, что и строка, закодированная в base64.При необходимости вам следует с помощью команды ALTER TABLE добавить новый столбец типа VARBINARY или BLOB для хранения двоичных данных.

ALTER TABLE MyTable ADD COLUMN BinaryField BLOB;

Затем вы можете заполнить этот столбец оператором UPDATE:

UPDATE MyTable SET BinaryField = FROM_BASE64(EncodedField);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...