Ich möchte von MySQL aus EXEC Gespeicherte Prozedur ein CREATE EVENT sql.
- Ich kann PREPARE nicht verwenden, da CREATE EVENT in PREPARE nicht erlaubt ist, und ich möchte einen zufälligen Namen verwenden, da ich ein einmaliges Ereignis erstellen muss, und ich muss einige Datumsparameter im DO-Abschnitt übergeben.
- MySQL hat kein EXEC.
Das SQL ist wie folgt aufgebaut:
SET @sql=CONCAT('CREATE EVENT myevent',md5(concat(@dt1,@dt2)),' ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 0 SECOND
DO
call genRoutes(''',@dt1,''',''',@dt2,''');
');
Die generierte @sql-Abfrage sieht wie folgt aus:
CREATE EVENT myeventcadb1e41722fb3c9b2e6992e740d76ca ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 0 SECOND
DO
call genRoutes('2011-04-07 00:00:00','2011-04-14 00:00:00');
Server Version 5.1.31-Gemeinschaft
Wie macht man das in einer Stored Procedure?