郑州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 安装svn网络有问题怎么办
  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献