ADELIA |
SADELIA |
WADELIA |
EADELIA |
(I/B) |
(B) |
(I/B) |
(B) |
Description
Permet d'assainir le texte d'un paramètre de type "chaîne" utilisé pour construire une requête SQL, dans le but de prévenir l'injection SQL.
La fonction remplace les caractères non imprimables par des espaces, et double les délimiteurs de fin de chaîne ('). Dans l'implémentation actuelle, elle double également le caractère d'échappement (\) si le paramètre SGBD a pour valeur 'MYSQL'.
Syntaxe
Résultat = &ASSAINIR_SQL(Chaîne)
ou Résultat = &ASSAINIR_SQL(Chaîne;SGBD)
Paramètres
Définition |
Contenu |
Contrôles |
|
Résultat |
Variable de type alphanumérique. |
Chaîne de caractère correctement échappée pour éviter l'injection SQL. |
|
Chaîne |
Variable de type alphanumérique. |
Chaîne de caractères pour laquelle la fonction est exécutée. |
Paramètre obligatoire. |
SGBD |
Constante ou variable de type alphanumérique. |
Nom du SGBD pour lequel l'échappement est réalisé, les valeurs acceptées sont les valeurs rendues par le mot réservé *SGBD. |
Paramètre facultatif. |
Remarques : si la longueur de la zone résultat est insuffisante, le résultat obtenu est tronqué, et potentiellement invalide.
Par exemple
* La variable NOM_CLIENT contient la valeur : L'atelier de Paul
REQUETE = 'SELECT CCOD_CLI FROM CLIENTS WHERE CNOM_CLI=''' /// &ASSAINIR_SQL(NOM_CLIENT) /// ''''
*
* Le caractère ' est doublé dans le texte de la requête qui devient
* SELECT CCOD_CLI FROM CLIENTS WHERE CNOM_CLI='L''atelier de Paul'
Liste des fonctions prédéfinies par thème
↑ Haut de page Copyrights Ι ©Hardis Group 2025 - Toute représentation ou reproduction intégrale ou partielle faite sans le consentement écrit d'Hardis Group est illicite.