MqSQLのストアドプロシージャを使用し、プログラムを作成中です。
その際、カーソルを使用する予定です。
カーソルで設定するSELECT文を動的SQLにしたいのですが、
検索しても方法が見当たりません。(検索能力がない。。。)
以下のようなことを実装したいのですが、
どなたかわかる方がいらっしゃいましたら、ご回答よろしくお願いします。
###該当のソースコード
delimiter //
create procedure test(in flg varchar(20))
begin
-- カーソル宣言
declare cur cursor for
@doSql;
-- ハンドラ宣言
declare continue handler for sqlexception set result = 'exception';
-- 引数によってカーソルのSQLを変更
if flg = 'tokyo' then
set @doSql = 'select name from world.city where district = "tokyo";';
else
set @doSql = 'select name from world.city where district = "osaka";';
end if;
-- カーソルオープン
open cur;
-- カーソル内の値をmyNameに設定
fetch cur into myName;
-- カーソルの要素分ループ
while myName != 1 do
-- 処理
end while;
-- カーソルクローズ
close cur;
end;
//
delimiter ;
###試したこと
カーソルのSQLにEXECUTEを使用。
・EXECUTE(declare cur ~);
・declare cur cursor for EXECUTE(@doSql);

回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/09/20 05:25