Andreas Becker: Sonderzeichen in Datenbankinhalten

Hallo!

Folgendes Problem: Datenbank Oracle soll ausgelesen werden (SQL, Java). Inhalt eines Feldes zum Beispiel 'C&A'. Folge: Abfrage/Ausgabe fängt zu spinnen an, da '&' ein Steuerzeichen ist, und als solches interpretiert wird.
Wie kann ich das umgehen?

Gruss,
  Andreas

  1. bin mir nicht sicher, aber perl und java ignorieren sowas, wenn man einen backslash davorsetzt.
    schon probiert?
    gruss
    oli

    Hallo!

    Folgendes Problem: Datenbank Oracle soll ausgelesen werden (SQL, Java). Inhalt eines Feldes zum Beispiel 'C&A'. Folge: Abfrage/Ausgabe fängt zu spinnen an, da '&' ein Steuerzeichen ist, und als solches interpretiert wird.
    Wie kann ich das umgehen?

    Gruss,
      Andreas

  2. Folgendes Problem: Datenbank Oracle soll ausgelesen werden (SQL, Java). Inhalt eines Feldes zum Beispiel 'C&A'. Folge: Abfrage/Ausgabe fängt zu spinnen an, da '&' ein Steuerzeichen ist, und als solches interpretiert wird.
    Wie kann ich das umgehen?

    Geht es wirklich um "Steuerzeichen"? Und was heißt "interpretiert" genau?

    SQL*Plus (das Oracle-"Terminal") besitzt ein feature, welches es dem Benutzer erlaubt, SQL-Anweisungen mit "Variablen" zu formulieren. Wird ein solches statement im Dialog ausgeführt, dann promptet SQL*Plus den Namen dieser Variablen und fragt nach dem aktuellen Wert. Und das Zeichen, mit dem der Name einer solchen Variablen beginnen muß, ist das "&".

    Dieses Prompting kann man in SQL*Plus aber auch abschalten. (Ich hatte neulich ein solches Problem, als ich aus ASCII-Daten via Perl SQL-Statements zum Einfügen in die Datenbank generiert habe - das geht viel schneller, als ein "richtiges" Programm zu schreiben - und diese mit SQL*Plus ausführen lassen wollte; auch in meinen Daten kamen "&"-Zeichen vor.)