zoukankan      html  css  js  c++  java
  • mysql,dos下执行SQL语句创建存储过程出错ERROR 1064 (42000):

    update1.sql的内容为

    DROP PROCEDURE IF EXISTS pcName;
    CREATE PROCEDURE pcName()
    BEGIN
    select 'a';

    END;

    dos下执行如下命令

    C:\SZXYS\METSDatabase\mysql\bin>mysql -uunsername -ppassword dbname<update1.sql

    报语法错误

    ERROR 1064 (42000):you have an error in your sql syntax;www.kobsky.cn 小眼世界৑̇ÿ³\B`

    check the manual that corresponds to your mysql server version...

    原因:

    是dos下把分号(;)当成了存储过程的结束符,所以出错了。

    解决方法,需要加上DELIMITER关键字,声明什么符号做为存储过程结束的分界符,修改如下,则可以执行

    DROP PROCEDURE IF EXISTS pcName;

    DELIMITER $$
    CREATE PROCEDURE pcName()
    BEGIN
    select 'a';
    END;

    $$

    DELIMITER ;

  • 相关阅读:
    Java运行时内存
    java --对象流与对象的序列化
    Java 文件操作
    爬虫
    eclipse项目放到github
    越来越玄的JAVA
    map和set的遍历
    集合总览
    unsafe类
    狡诈的java并发容器
  • 原文地址:https://www.cnblogs.com/lingxzg/p/1787692.html
Copyright © 2011-2022 走看看