Question

J'ai un problème. Si j'ai une zone de texte dans ASP.NET et que j'entre deux guillemets à la fin de la phrase, j'obtiens une erreur dans mon instruction SQL. J'ai suivi le profileur SQL mais sans succès.

par exemple. Le renard paresseux saute par-dessus le chien "". Cela échoue ....

" "Le" paresseux " le renard saute par-dessus le chien. Cela semble bien

Tous les indicateurs bienvenus

Était-ce utile?

La solution

Vous devriez probablement poster le message d'erreur exact (et, si possible, un code illustratif). Notez également qu'avec LINQ-to-SQL, vous n'avez pas besoin du profileur SQL pour voir la trace:

ctx.Log = Console.Out; // job done

Autres conseils

Etes-vous en train de concaténer votre entrée utilisateur dans l’instruction SQL directement? Si c'est le cas, c'est certainement le problème.

Si vous utilisez à la place une instruction SQL paramétrée (c.-à-d. envoyez les données de l'utilisateur en tant que paramètre plutôt que directement dans le code SQL), tout devrait bien se passer. De cette façon, vous vous prémunissez également contre les attaques par injection SQL ...

0x3A28213A 
0X6339392C 
0X7363682E
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top