mysql创建存储过程报错
ERROR 1307 (HY000): Failed to CREATE PROCEDURE Test
mysql版本是5.1.28

解决方案 »

  1.   

    示例:
    mysql> DELIMITER $$
    mysql> CREATE PROCEDURE QQ()
        -> BEGIN
        ->  SELECT * FROM test;
        -> END
        -> $$
    Query OK, 0 rows affected (0.00 sec)
    假设你在MYSQL SHELL下建立SP
      

  2.   

    贴你的create procedure语句。是不是没有权限?
      

  3.   


    mysql> DELIMITER //
    mysql> CREATE PROCEDURE TEST()
        -> BEGIN
        ->  SELECT NOW();
        -> END
        -> //
    ERROR 1307 (HY000): Failed to CREATE PROCEDURE Test 
      

  4.   

    root 登陆的 
    能够创建触发器
    创建存储过程和函数的错误是一样的。。 
      

  5.   

    在SHELL下
    use   mysql;  
      select   *   from   user   where   user="username"   
    贴结果
      

  6.   

    未选数据库,的错误信息是: No database selected估计楼主的问题是不是做过数据库的升级?
      

  7.   


    localhost root Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0production root Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0127.0.0.1 root Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y Y 0 0 0 0
      

  8.   

    升级中好象经常出这种问题。你是通过什么方式升级的?mysqldump?
      

  9.   


    还有几个字段值是特殊的 ssl_type(空值), ssl_cipher(BLOB),x59_issuer(BLOB),X59_SUBJECT(BLOB),最后四个字段值是0  其余的全是Y
      

  10.   

    建议,你重新在这个mysql中创建一个新的database
    然后试一下是否能创建存储过程。如果可以,则把原数据库倒出mysqldump,重建后再导入。
      

  11.   

    那没什么好办法了。 一种建议是再运行一下mysql_upgrade。但不保险。最好的办法是mysqldump,重建后再导入