En SQL, les données qui doivent être placées entre guillemets incluent les données de caractères, les valeurs de date et d'heure et les valeurs NULL. Le but des citations est d'empêcher les attaques par injection SQL et d'identifier la valeur sous forme de texte, plutôt que de commande ou de fonction SQL. Toutefois, lorsque le type de données est un nombre, une valeur booléenne ou une valeur d'énumération, les guillemets ne sont pas requis.
Données qui doivent être citées en SQL
En SQL, les types de données suivants doivent être mis entre guillemets :
-
Données de caractères : Toutes les données de caractères, y compris le texte, les mots, ou des phrases.
-
Date et heure : Valeur de date et d'heure.
-
Valeur NULL : Une valeur qui indique qu'aucune donnée n'existe. Exemples spécifiques où des guillemets sont nécessaires
Pourquoi les guillemets
SQL traite les valeurs entre guillemets comme du texte et ne les interprète pas comme des commandes ou des fonctions SQL. Cela permet d'éviter les attaques par injection SQL, dans lesquelles un utilisateur malveillant corrompt ou manipule une base de données en saisissant du code malveillant dans un champ de saisie. -
- Lorsque les guillemets ne sont pas requis
- Les guillemets ne sont pas requis dans les cas suivants :
-
Types de données numériques tels que les entiers et les nombres à virgule flottante.
Valeurs booléennes (VRAI et FAUX).
Valeurs dans les énumérations et les collections.
Exceptions
Dans certains cas, la citation n'est pas requise même si le type de données nécessiterait normalement une citation. Par exemple :
- Lorsque les valeurs sont stockées dans une colonne avec un guillemet simple (') comme délimiteur de caractères.
- Lorsque la valeur est exprimée à l'aide d'une séquence d'échappement, telle que le caractère d'échappement ('') suivi d'un guillemet ('').
-
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!