Table of ContentsPreviousNext

Ispirer             Ispirer


Ispirer SQLWays データベース移行ソフトウェア

パラメータ付きカーソルのOracleからMySQLへの変換

Oracleではカーソルにパラメータを使用できます。パラメータはクエリの中で定数が記述可能な場所に指定する事が出来ます。パラメータにより、ひとつのカーソルを異なるクエリの入力パラメータで使うことができます。

MYSQLはカーソルのパラメータはサポートしていません。

Oracleのパラメータ付きカーソルをMySQL向けに変換する場合、SQLWaysはカーソルパラメータの代わりにローカル変数を宣言して使用します。カーソルのOPEN前にSQLWaysはカーソルパラメータの値をこれらのローカル変数に代入します。

Examples:

TABLE 46. パラメータ付きカーソルのOracleからMySQLへの変換
Oracle
MySQL
create procedure ora_sp_cur_with_param_mysql
a
var1 number := 0;
CURSOR cur1 (val1 number)  IS
SELECT col1 FROM tab1
WHERE col5 = val1;
BEGIN
open cur1 (0);
fetch cur1 into var1;
close cur1;
open cur1 (5);
fetch cur1 into var1;
close cur1;
END; 
Create procedure ora_sp_cur_with_param_mysql()
BEGIN
DECLARE var1 FLOAT DEFAULT 0;
DECLARE val1 FLOAT;
DECLARE cur1 CURSOR FOR
SELECT col1 FROM tab1
WHERE col5 = val1;
SET val1 = 0;
open cur1;
fetch cur1 into var1;
close cur1;
SET val1 = 5; 
open cur1;
fetch cur1 into var1;
close cur1;
end; 


Table of ContentsPreviousNext
Ispirer             Ispirer
Copyright © 1999-2015 Ispirer Systems Ltd. Ispirer and SQLWays are trademarks of Ispirer Systems Ltd. All other product names may be trademarks of the respective companies. All rights reserved.