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

Ikke tilladt at returnere et resultatsæt fra en trigger

Undtagelsen er, synes jeg, klar nok.

Du kan udføre yderligere handlinger inde i en trigger (kalde en SP, udføre indsæt/opdater/slet-operationer, ...), men alle disse har ikke lov til at returnere noget resultat.

Det betyder, at en SP med en simpel select-sætning indeni ikke er tilladt. Hvis du i stedet ville bruge denne select-sætning inden for en loop for eksempel for at udføre opdateringer eller lignende, ville dette være tilladt, da du ikke ville returnere noget.

Årsagen er, at en insert/update/delete-sætning ikke kan returnere noget, den kan ikke returnere resultatsættet af din lagrede procedure, og du bør derfor ikke forsøge at returnere en inde i triggeren.




  1. Sådan vises forespørgsel og resultater på separat fane i SQL Server Management Studio (SSMS) - SQL Server / TSQL-vejledning, del 15

  2. Venstre polstring i SQL Server – 3 LPAD()-ækvivalenter

  3. Opret Dato-objekt i PHP til datoer før 1970 i et bestemt format

  4. Sådan fungerer REGEX_REPLACE()-funktionen i MySQL