代码之家  ›  专栏  ›  技术社区  ›  Vojta MareÅ¡

SQL:1292截断了不正确的双精度值:'https://twitter.com/'

  •  0
  • Vojta MareÅ¡  · 技术社区  · 6 年前

    我有一个很短的问题要问MariaDB修复twitter的断开链接。

    Table users将link\u twitter作为VARCHAR(255),以生成DB模式,我们正在使用PHP原则,但我想手动运行此查询。

    服务器正在运行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):截断了不正确的双精度值:” https://twitter.com/ “”

    我知道,这个问题过去被问了很多次,但没有一个解决方案对我有效-(

    求你了,我怎么修?

    谢谢

    1 回复  |  直到 6 年前
        1
  •  2
  •   Gordon Linoff    6 年前

    使用适当的字符串串联方法:

    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(和大多数数据库)中添加。因此,它试图将其参数视为数字。