sql >> Database teknologi >  >> RDS >> Mysql

Hvad er løsningen for at bruge dynamisk SQL i en lagret procedure

Der er ingen god løsning på fraværet af Dynamic SQL i MySQL-funktioner, kun klunkede klatter. Nogle ting er stadig helt umulige at lægge mærke til, såsom at bruge et dynamisk beregnet feltnavn eller tabelnavn i en SQL-forespørgsel. Ja, en gang imellem er der behov for at gøre den slags!

Og prøv ikke at snyde ved at lægge Dynamic SQL i en lagret procedure og indpakke en funktion eller trigger, som spørgsmålsstilleren prøvede - MySQL er for smart og vil give dig den sædvanlige obskure fejlmeddelelse. Tro mig, jeg har været rundt i alle husene.

Jeg kommer fra en Oracle PL/SQL- og MS SQL Server-baggrund, og jeg savner dybt den rigdom, som PL/SQL og (i lille grad) T-SQL tilbyder til at skrive proceduremæssig SQL.



  1. hvordan løses Generel fejl:2014 Kan ikke udføre forespørgsler, mens andre ikke-buffrede forespørgsler er aktive. ved hjælp af PDO-forbindelse

  2. Hvor gemmer PostgreSQL konfigurations-/conf-filer?

  3. QMYSQL-driveren er ikke indlæst på Windows

  4. Når EXPLAIN køres, hvis feltværdien for nøgle ikke er null, men Extra er tom, bruges så nøglen?