Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Was ist die Problemumgehung für die Verwendung von dynamischem SQL in einer gespeicherten Prozedur?

Es gibt keine gute Problemumgehung für das Fehlen von dynamischem SQL in MySQL-Funktionen, nur klobige Klumpen. Einige Dinge sind immer noch absolut unüberwindbar, wie z. B. die Verwendung eines dynamisch berechneten Feldnamens oder Tabellennamens in einer SQL-Abfrage. Ja, ab und zu ist es notwendig, so etwas zu tun!

Und versuchen Sie nicht zu schummeln, indem Sie das dynamische SQL in eine gespeicherte Prozedur einfügen und eine Funktion oder einen Trigger einschließen, wie es der Fragesteller versucht hat - MySQL ist zu schlau und gibt Ihnen die übliche obskure Fehlermeldung. Glauben Sie mir, ich war in allen Häusern.

Da ich von einem Oracle PL/SQL- und MS SQL Server-Hintergrund komme, vermisse ich schmerzlich die Reichhaltigkeit, die PL/SQL und (in geringem Umfang) T-SQL zum Schreiben von prozeduralem SQL bieten.