Я унаследовал БД с около 6000 записей. Один из столбцов представляет набор из 6 элементов как varchar. Некоторые записи выглядят так:
A
ABC
A,B,C,D,E,F
ade
ONONONONONONON
onon?" or sleep(10)#onononon
Это выглядит довольно грязно, но я думаю, что хочу спасти те, которые представлены в виде букв, но игнорировать то, что выглядит как результат инъекционной атаки.
Что я хочу сделать, это представить этот столбец как тип SET. Я думаю в соответствии с (псевдокод):
UPDATE MYTABLE
SET NEWCOLUMN = (NEWCOLUMN & 'A')
WHERE (REGEX MATCHES OLDCOLUMN)
И повторите этот запрос 6 раз для 6 различных элементов.
Хотя я не могу сообразить свой следующий шаг ... Я не могу понять, как написать этот запрос на обновление, чтобы он работал - для начала я не могу понять, как написать регулярное выражение для MySQL.