テーブルをWhereで絞り込んだSelectでカーソルを作成するときに構文エラーが発生します。
簡単なソースのはずですが何が間違っているのかわかりません。
修正方法をお教えいただけないでしょうか
DELIMITER // CREATE PROCEDURE GetASINPrice( OUT price int, IN asinText varchar(10) ) BEGIN DECLARE @registTable CURSOR FOR SELECT Price FROM registasin where ASIN=asinText; DECLARE @asinTable CURSOR FOR SELECT PriceFBA,PriceSelf,PriceCart FROM asin where ASIN=asinText; DECLARE @isSet int ; @isSet=0; CLOSE @registTable; CLOSE @asinTable; END; // DELIMITER ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '@isSet int ; DECLARE @registTable CURSOR FOR SELECT Price FROM registasin where' at line 7
mysql> SHOW COLUMNS FROM asin; +--------------+------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+------------------+------+-----+---------+-------+ | ASIN | varchar(10) | NO | PRI | NULL | | | JAN | varchar(13) | YES | | NULL | | | Title | varchar(1024) | YES | | NULL | | | ImageUrl | varchar(2048) | YES | | NULL | | | FixFee | smallint(6) | YES | | NULL | | | FeeRate | float(2,2) | YES | | NULL | | | CategoryHash | int(10) unsigned | YES | | NULL | | | PriceFBA | int(11) | YES | | NULL | | | PriceSelf | int(11) | YES | | NULL | | | PriceCart | int(11) | YES | | NULL | | +--------------+------------------+------+-----+---------+-------+
mysql> SHOW COLUMNS FROM registasin; +-----------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-----------+--------------+------+-----+---------+-------+ | Enabled | bit(1) | NO | | NULL | | | ASIN | varchar(10) | NO | PRI | NULL | | | Price | int(11) | YES | | NULL | | | Keyword | varchar(256) | YES | | NULL | | | ExKeyword | varchar(68) | YES | | NULL | | +-----------+--------------+------+-----+---------+-------+ 5 rows in set (0.00 sec)
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/01/31 01:16