Escaping von Sonderzeichen in SQL
Gibt es eine einfache Möglichkeit in Oracle spezielle escape-Zeichen in einer SQL-Anweisung? (z.B. %, &, ') sah ich dieses link in Bezug auf manuelles escaping von Zeichen, aber ich dachte, dass Oracle zur Verfügung gestellt haben, ein einfacher Weg, dies zu tun.
Hinweis: ich bin generieren dynamische SQL-select-Anweisungen durch ein ORM.
- Die einzige Sache, die Bedürfnisse zu "entkommen" ist das einzige Zitat innerhalb eines character-literal. Keiner der anderen, die Sie erwähnen sind "Sonderzeichen", die Notwendigkeit der Flucht.
- Eigentlich der Prozentsatz und der Unterstrich ist, werden Sonderzeichen bei der Verwendung der WHERE - .. WIE-Klausel.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bei Verwendung von bind-Variablen und ORM, embedded single-quotes und kaufmännische und-Zeichen sollte übergeben werden, automatisch; das sind spezielle Zeichen, die in SQL*Plus oder SQL*Developer.
Verwenden, WIE, wo der Suche nach den Zeichen % und _ (nicht Ihre multi - und Einzel-Zeichen wildcard-Versionen), die Sie verwenden würden, die
escape
- Klausel derlike
Zustand:werden nur die Zeilen, in denen some_text beginnt mit einem Prozentzeichen.
Scheint es, du suchst so etwas wie den Befehl " SET DEFINE OFF, die Sie ausführen können, und Sie wirkt auf den ganzen SQL-Sitzung. Dieser Befehl jedoch nur verhindert, dass Oracle von der Aufgabe Besondere Bedeutung zu, das kaufmännische und-Zeichen. Es hat keinen Einfluss auf andere Sonderzeichen, wie das Apostroph.
Ein paar links, um weitere Informationen zu escaping-Zeichen Folgen:
https://forums.oracle.com/forums/thread.jspa?threadID=2256637
http://docs.oracle.com/cd/B10501_01/text.920/a96518/cqspcl.htm
hier ist die definitive Antwort-Seite auf tech-on der net. Auch bietet Beispiele und übungen
http://www.techonthenet.com/sql/like.php