MySQL存储过程中所遇到的bug及解决方案

在存储过程中,因为存储过程完成的是一个复杂的操作,其中含有许多的内部逻辑,所以就容易产生许多bug,如下对一些在存储过程中所遇到的bug进行介绍以及对应的解决方法。

1、分号写成了中文导致执行错误。——将分号改为英文格式
2、将所需要查询的字段定义了一下否则导致一直展示空值。
3、while do 循环嵌套时执行完内层循环就停止了,原因是内层循环的值在完成一次内循环后就已经变成其最大值。  解决方法:(1)如for循环一样将内循环值的初始化放在外循环中  (2)在外循环中,将内循环的值再次初始化
4、对sql语句的定义以及对变量的赋值需要加上set否则会报错
5、左连接时前面的是左边的表,保留左表,左连接出来的是一个组合表
6、修改不使用if语句都使用while语句后,发生新错误:拼接语句中值不存在发现while语句跳不出去循环,改用回if EXISTS语句;发现if EXISTS语句总是存在莫名错误,改用if  is null 来进行判断;发现还是不存在,判断之进行查询并into赋值。——成功!
7、进行视图拼接时出错,发现是字段每回创建后没有重新赋予空值,超出了
     范围,进行赋空值——成功!
8、添加入临时表的表序号循环出错,总是在末尾出来个1;发现MySQL数据中添加字段没有从第一空行起这个概念,只能是添加   出来一个新字段;所以在尝试了各种JOIN连接方法得不出来想要的结果后(连接出来都是遍历的),改用建立表时另外一个字段设置为自增及解决——成功!
9、mysql中insert语句添加多个需要查询的语句时 insert into表名 select 多字段即可!

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值