0

我正在尝试使用该代码将多条记录添加到表中

BEGIN
    SET @i:=10000;
    WHILE @i <= 10099 DO
        INSERT INTO wp_genpro_products (serial, guarantee) VALUES ('HMAX'+@i, 0);
        SET @i = @i + 1;
    END WHILE;
END

它只适用于没有添加的数字,'HMAX'+但是当尝试插入带有数字的字母时,它给了我 #1292 错误 - 截断不正确的双精度值

CREATE TABLE `wp_genpro_products` (
  `id` mediumint(9) NOT NULL,
  `serial` varchar(255) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
  `guarantee` mediumint(255) DEFAULT NULL,
  `reg_date` date DEFAULT NULL
)
4

1 回答 1

0

通过使用解决CONCAT()

BEGIN
    SET @i:=10000;
    WHILE @i <= 10099 DO
        INSERT INTO wp_genpro_products (serial, guarantee) VALUES (CONCAT('HMAX',@i), 0);
        SET @i = @i + 1;
    END WHILE;
END
于 2019-11-06T19:44:28.070 回答