7
votes

Échapper des caractères spéciaux dans SQL

Y a-t-il un moyen facile d'échapper à des caractères spéciaux dans une déclaration SQL? (c.-à-d.%, &, ') J'ai vu ce lien en ce qui concerne l'échappement manuellement des caractères, mais je pensais que Oracle a peut-être fourni une facilité façon de le faire.

Remarque: Je génère des instructions dynamiques SQL Sélectionnez des instructions via un orj.


2 commentaires

La seule chose qui a besoin de «échapper» est la citation unique à l'intérieur d'un caractère littéral. Aucun des autres que vous ne mentionnez sont des "caractères spéciaux" qui ont besoin de s'échapper.


@A_HORSE_WITH_NO_NAME En réalité, le pourcentage et le soulignement sont des caractères spéciaux lors de l'utilisation de l'endroit où .. comme la clause.


3 Réponses :


2
votes

Il semble que vous recherchiez quelque chose comme le jeu de commandes défini, que vous pouvez exécuter et cela affecte toute la session SQL. Cette commande n'empêche cependant que l'oracle de donner une signification spéciale au caractère ampersand. Cela n'affecte pas d'autres caractères spéciaux tels que la citation unique.

Quelques liens vers des informations supplémentaires sur les caractères de l'échappement suivent:

https://forums.oracle.com/forums/thread.jspa? Threadid = 2256637

http://docs.oracle.com/cd/ B10501_01 / TEXT.920 / A96518 / CQSPCL.HTM


1 commentaires

L'ampersand est reconnu par le client SQL * Plus. Ce n'est pas un caractère spécial pour le serveur de base de données réel.



16
votes

Si vous utilisez des variables de liaison et une orm, des guillemets simples intégrés et des ampersands doivent être remis automatiquement; Ce sont des caractères spéciaux dans le développeur SQL * Plus ou SQL * *

à utiliser comme si vous recherchez les caractères littéraux% et _ (pas leurs versions génériques multi- caractères), vous utiliseriez le Escape Code> Clause du Comme Code> Condition: p>

select * from my_table where some_text like '/%%' escape '/';


0 commentaires

0
votes

Voici la page de réponses définitive sur Tech sur le net. Même fournit des exemples et des exercices

http://www.techonthenet.com/sql/ike.php < / p>


0 commentaires