convertir la procédure stockée mysql en mssql
-
05-07-2019 - |
Question
J'ai besoin d'utiliser une requête d'ordre dynamique dans mysql et j'ai réussi à le faire grâce à la concaténation de chaînes dans mysql comme suit:
set @stmt_text: = concat ('select * from abc order by', commander );
préparez stmt_handle à partir de @stmt_text;
exécuter stmt_handle;
désallouer préparer stmt_handle;
J'ai besoin d'une méthode similaire pour convertir cela en mssql
Des idées?
La solution
Oui, lancez-le comme ceci:
execute ('select * from abc order by ' + @sorder);
Mais n'oubliez pas que vous devez vérifier la variable de commande si vous l'obtenez via une entrée utilisateur (pour arrêter les injections SQL)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow