创建存储过程失败,代码如下,怎么回事啊?

来源:2-2 JDBC存储过程之调用带输入参数的存储过程(上)

Mua清流

2016-10-18 10:57

58058f6300014a1405000110.jpg

58058f630001ef6605000305.jpg

输的没错啊 和老师的

写回答 关注

4回答

  • 慕妹4187063
    2017-03-21 10:57:06

    没有输入参数的值长度吧,你用控制台敲一下呀,我用你的代码在控制台敲了,没问题


  • Silenc_zk
    2017-01-11 09:17:19

    IF sp_name IS NULL OR sp_name = '' THEN

    sp_name = '' ,这个空值,中间少了一个空格符,表示值为空

  • Mua清流
    2016-10-18 20:40:54
    CREATE PROCEDURE sp_select_filter(IN sp_name VARCHAR(20)) 
        -> BEGIN
        -> IF sp_name IS NULL OR sp_name = '' THEN
        -> SELECT * FROM imooc_goddess;
        -> ELSE IF LENGTH(sp_name) = 11 AND SUBSTRING(sp_name,1,1) = 1 THEN 
        -> SELECT * FROM imooc_goddess WHERE mobile = sp_name; 
        -> ELSE SELECT * FROM imooc_goddess WHERE user_name LIKE CONCAT('%',sp_name,'%');
        -> END IF;
        -> END IF;
        -> END 
        
        改成这样了 都不行  哪错了?


    Mua清流 回复在路上的张同...

    改了定界符 还是报错 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-> BEGIN -> IF sp_name IS NULL OR sp_name = '' THEN -> SELECT * FROM i' at line 2

    2016-10-19 16:27:25

    共 2 条回复 >

  • 在路上的张同学
    2016-10-18 19:16:53

    开头没加 create procedure 表名 (in sp_name varchar(20)

    Mua清流 回复在路上的张同...

    改过了 还不行 代码我贴下面了

    2016-10-18 20:42:12

    共 4 条回复 >

JDBC之“对岸的女孩走过来”

JDBC的深入挖掘,主要介绍在实际开发过程中的各种知识

49845 学习 · 86 问题

查看课程

相似问题