0

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 構文にエラーがあります。4行目のnear ''を使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください

プロシージャを使用するのは初めてで、それについてはよくわかりません。私を助けてください。

4

1 に答える 1

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のデモです

于 2013-11-06T23:44:42.883 に答える