存储过程phpmyadmin

时间:2013-10-30 17:44:38

标签: php mysql stored-procedures

我想在mysql phpmyadmin中编写一个程序。 程序如下:

create procedure insert_villa (IN $mtid int,IN $ctid 
int,IN $pro varchar(100),IN $city 
   varchar(100))
   begin

  //variable declare here
   declare $mtid int;
   declare $ctid int;
   declare $pro varchar(100);
   declare $city varchar(100);

   //setting variables
   set @mtid = ($mtid);
   set @ctid   = ($ctid );
   set @pro      = ($pro) ;
   set @city    = ( $city);

 // insert statement 
"INSERT INTO `melk`(`melktypeid`, `contracttypeid`,`province`,`city`)
 VALUES (mtid,ctid,pro,city)";
END//  

它显示如下错误: SQL查询:

CREATE PROCEDURE insert_villa( IN $mtid int, IN $ctidint, IN $pro varchar( 100 ) , IN $cityvarchar( 100 ) ) BEGIN //

MySQL说:文档

  

#1064 - 您的SQL语法出错;检查手册   对应于您的MySQL服务器版本,以便使用正确的语法   靠近''第4行

这是我第一次使用程序。我对此并不了解。请帮帮我。

1 个答案:

答案 0 :(得分:0)

您的程序可归结为此

CREATE PROCEDURE insert_villa (IN _mtid INT, IN _ctid INT,  IN _pro VARCHAR(100), IN _city VARCHAR(100))
  INSERT INTO melk (melktypeid, contracttypeid, province, city)
  VALUES (_mtid, _ctid, _pro, _city);

样本用法:

CALL insert_villa(1, 1, 'Province1', 'City2');

这是 SQLFiddle 演示