郑州boy 2012-12-14 18:23 采纳率: 0%
浏览 227
已采纳

Mysql 存储过程问题

大家好,我遇到一个 很诡异的问题

 今天写了一个存储过程 
 /

PROCEDURE video_center.updateusercourse(IN id VARCHAR(20),IN videoname VARCHAR(50),IN author_id INT(11),IN vedio_id INT(11),OUT mychr VARCHAR(200))

这个只是代码的开始的一部分

/**用户的名字*/

DECLARE authorname VARCHAR(20);

SELECT name INTO authorname FROM vc_user WHERE id=304633;
SELECT CONCAT('better hope myVar is not null', 'author_id',authorname) INTO mychr;

以上只是部分代码 存储过程本身编译是通过的 但是问题是 我 用select into 给变量赋值的时候出现了 问题

SELECT name INTO authorname FROM vc_user WHERE id=304633;
首先这条sql 语句如果单独执行不赋值的话 是能查询出来值的

然后 使用这条sql 语句 给返回的值 赋值 可以怎么也付不了值 不知道什么原因,我用java 调用这个存储过程 返回的值始终是 null

SELECT CONCAT('better hope myVar is not null', 'author_id',authorname) INTO mychr;

那位大牛给看看 这方面的问题 不胜感激。

  • 写回答

1条回答

  • jinnianshilongnian 2012-12-14 19:18
    关注

    DECLARE authorname varchar(100) DEFAULT '';

    如果差不到authorname,则authorname默认为null。此时
    SELECT CONCAT('better hope myVar is not null', 'author_id',authorname) INTO mychr;

    也将为null

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

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器