mysql 插入數據報錯 Truncated incorrect DOUBLE value

插入語句爲:

delimiter //
create procedure create_test_data()
begin
    declare i int default 1;
    set i = 1;
    while i <= 10000000 do
        insert into person (name, age, childs) VALUES
        ('張三' +  i, rand() * 100, rand() * 10);
        end while;
end //
delimiter ;

報錯:

Truncated incorrect DOUBLE value:張三

我覺得是zhangsan + i執行出了問題,類似java代碼不同類型的數據相加,所以修改爲:

delimiter //
create procedure create_test_data()
begin
    declare i int default 1;
    set i = 1;
    while i <= 10000000 do
        insert into person (name, age, childs) VALUES
        (concat('張三', i), rand() * 100, rand() * 10);
        end while;
end //
delimiter ;

這樣就可以了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章