【问题标题】:#1064 - MySQL server version for the right syntax to use near 'END' error?#1064 - MySQL 服务器版本在“END”错误附近使用正确的语法?
【发布时间】:2017-04-29 20:23:46
【问题描述】:

我已经创建了一个存储过程,以便将数据插入数据库,因为我是存储过程的新手,所以我没有得到这个问题的确切解决方案,以下是我的查询:

create PROCEDURE retrieveSiteDetails
(in longitude varchar(50),in latitude varchar(50),in email_id varchar(60),in file_id varchar(10),
 in unique_site_id varchar(25),in description varchar(150),in site varchar(30),in batch varchar(20),
 in group_is varchar(85),in enumeration varchar(20),in created_at datetime,in modified_at datetime)
 BEGIN
 insert into geodata (longitude,latitude,email_id,file_id, unique_site_id,description,site,batch,
  group_is,enumeration,created_at,modified_at) values (in_longitude,in_latitude,in_email_id,
in_file_id,in_unique_site_id,in_description,in_site,in_batch,in_group_is,in_enumeration,
in_created_at,in_modified_at);
 END

请帮我解决这个查询问题

【问题讨论】:

    标签: php mysql stored-procedures phpmyadmin


    【解决方案1】:

    使用此格式从 mysql 客户端创建过程。

    DELIMITER $$
    
    USE DBNAME$$
    
    DROP PROCEDURE IF EXISTS <Your Procedure_name>$$
    
    CREATE PROCEDURE <Your Procedure_name>( <Parameter1>,<Parameter2>......<Parametern>)
    BEGIN
    
    <Your statements>;
    
    
    END$$
    
    DELIMITER ;
    

    【讨论】:

    • 我已经在插入查询的末尾和 END 字之前使用了分号
    • 我已经编辑了从mysql客户端创建过程的格式。
    猜你喜欢
    • 2017-03-23
    • 2017-12-10
    • 2020-07-03
    • 1970-01-01
    • 1970-01-01
    • 2013-05-12
    • 1970-01-01
    • 2017-08-26
    • 1970-01-01
    相关资源
    最近更新 更多