龙猫12138 2017-06-07 13:45 采纳率: 0%
浏览 790
已采纳

mysql 中下面这个存储过程为什么错了?

delimiter @@
create procedure dolist9 ()
begin
declare str1 , str2 varchar (20) ;
declare results varchar (2000) def;
declare flag boolean default true ;
declare cur cursor for select name,homeaddr from baseinfo ;
declare continue handler for not found set flag=false ;

open cur ;
while flag do
    fetch cur into str1 , str2 ;
    if (left(str1,1)='陈') 
    then set results = concat(str1 ,str2) ;
    end if ;
end while ;
close cur ;
select results ;

end @@
delimiter ;

baseinfo中已经有了name和homeaddr两列,一共是237行,运行call dolist9 时报错incorrect string value图片说明
name的类型是varchar(50) homeaddr类型是varchar(255) 但是varchar(20)是完全可以分别装下name列值和homeaddr列值的。
过程的作用是判断名字是不是姓陈然后把姓陈的人和住址连起来。

求大家帮我看看这个应该怎么改。先多谢大家!

  • 写回答

1条回答 默认 最新

  • sinat_34881157 2017-06-08 04:11
    关注

    MYSQL中没有boolean类型,直接用int 存01,来判断即可

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 matlab数字图像处理频率域滤波
  • ¥15 在abaqus做了二维正交切削模型,给刀具添加了超声振动条件后输出切削力为什么比普通切削增大这么多
  • ¥15 ELGamal和paillier计算效率谁快?
  • ¥15 file converter 转换格式失败 报错 Error marking filters as finished,如何解决?
  • ¥15 ubuntu系统下挂载磁盘上执行./提示权限不够
  • ¥15 Arcgis相交分析无法绘制一个或多个图形
  • ¥15 关于#r语言#的问题:差异分析前数据准备,报错Error in data[, sampleName1] : subscript out of bounds请问怎么解决呀以下是全部代码:
  • ¥15 seatunnel-web使用SQL组件时候后台报错,无法找到表格
  • ¥15 fpga自动售货机数码管(相关搜索:数字时钟)
  • ¥15 用前端向数据库插入数据,通过debug发现数据能走到后端,但是放行之后就会提示错误