Puis-je utiliser une variable comme nom de table dans SQLite sans manipulation de chaîne ?

Barbara Streisand
Libérer: 2024-11-08 14:30:02
original
193 Les gens l'ont consulté

Can I Use a Variable as a Table Name in SQLite Without String Manipulation?

Nom de table variable dans SQLite

Q : Est-il possible d'utiliser une variable comme nom de table dans SQLite sans recourir à une chaîne constructeurs ?

A1 : Malheureusement, non. Les tables ne peuvent pas être la cible d'une substitution de paramètres dans SQLite.

A2 : Pour atténuer les risques d'injection, envisagez d'utiliser une fonction de nettoyage pour supprimer les caractères potentiellement dangereux du nom de la table. Par exemple, la fonction suivante peut être utilisée pour supprimer les caractères non alphanumériques :

def scrub(table_name):
    return ''.join(chr for chr in table_name if chr.isalnum())
Copier après la connexion

Utilisation :

scrub('); drop tables --')  # returns 'droptables'
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!