データベース全体の文字列を変更する手順を作成しようとしています...何度も検索した後、この手順を思いつきましたが、エラーが発生します。手順は次のとおりです。
BEGIN
declare t,c varchar(100);
declare TABLES cursor for SELECT table_name, column_name
FROM `INFORMATION_SCHEMA`.`COLUMNS`
WHERE `TABLE_SCHEMA`='MY_DATABSE';
declare exit handler for 1329 begin end;
open tables;
looping: loop
fetch tables into t,c;
SET @s1= CONCAT('UPDATE ',
'MY_DATABASE', '.', t, ' SET ',
c, ' = replace(', c,', \'', old, '\'', ' , ', '\'', new, '\')');
PREPARE stmt FROM @s1;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
end loop;
close tables;
END
また、パラメーターを指定してプロシージャーを呼び出した場合のエラーは、よく知られている構文の 1064 エラーです。MySQL サーバーのバージョンに対応するマニュアルで、使用する正しい構文を確認してください。 old' , 'new')' 行 1