SQL: 1292 Сокращенное неверное значение DOUBLE: ‘https://twitter.com/’

У меня очень короткий запрос к MariaDB, чтобы исправить неработающие ссылки на твиттер.

У пользователей таблиц есть link_twitter как VARCHAR (255), для генерации схемы БД мы используем PHP Doctrine, но я хочу выполнить этот запрос вручную.

Сервер работает MariaDB 1.10

Запрос:

UPDATE
`user` AS u
SET
u.link_twitter = "https://twitter.com/" + u.link_twitter
WHERE
u.link_twitter NOT LIKE 'https://twitter.com/%';

Но я получаю сообщение «Ошибка запроса: (1292): усеченное неверное значение DOUBLE:»https://twitter.com/»

Я знаю, что этот вопрос много раз задавался в прошлом, но ни одно из решений не помогло мне. 🙁

Пожалуйста, как я могу это исправить?

Спасибо

0

Решение

Используйте правильный метод конкатенации строк:

UPDATE user u
SET u.link_twitter = CONCAT('https://twitter.com/', u.link_twitter)
WHERE u.link_twitter NOT LIKE 'https://twitter.com/%';

+ означает добавление в MariaDB / MySQL (и большинство баз данных). Следовательно, он пытается рассматривать свои аргументы как числа.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]