DECLARE FoundCount INT;
DECLARE db_Name VARCHAR(255);
SET @Project_List_val = CONCAT(Project_Number_val, '_List');
SET @db_Name='test_rs';
SET @sql1 = CONCAT('SELECT COUNT(1) INTO', @FoundCount ,'
FROM information_schema.tables
WHERE table_schema =',@db_Name,'
AND table_name =', @Project_List_val);
PREPARE stmt FROM @sql1;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
IF FoundCount = 1 THEN
SET @sql = CONCAT(' INSERT INTO test (Panel_Id)
SELECT Panel_Id
FROM ', @Project_List_val);
PREPARE stmt FROM @sql;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
END IF;
このストアド プロシージャは正常に実行されました。しかし、実行しようとすると、以下のエラーが表示されます。
1064 - SQL 構文にエラーがあります。1行目の「NULL」付近で使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください
指定されたテーブル (@Project_List_val) が存在する場合、2 番目のクエリを実行する必要があります。