Hallo,
wie kann man ein Sonderzeichen (&:wink: in einer Zeichenkette unterbringen?
insert into test values(‚1&1 DSL-Flat‘);
Geben Sie einen Wert für 1 ein:
‚‘ und ‚/‘ tun es nicht, glaube ich
Es muss doch irgendwie möglich sein Einträge mit diesem Zeichen anzulegen?
Gibt es vielleich irgendwelche Routinen, die eineZeichenkette nach unerlaubten Zeichen durchsuchen und diese „ausbügeln“?
Danke
Alex
Hi Alex,
ich vermute mal, dass die Probleme bei SQLPLUS auftreten. Versuchs mal mit
SET DEFINE OFF
um die Variablenersetzung auszuschalten.
gruss
bernhard
… und wenn das nicht klappt nimm den ASCII-CODE und rechne das Zeichen um. Das funktioniert auf jeden Fall.
Gruß
Peter
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo Bernhardt,
ich vermute mal, dass die Probleme bei SQLPLUS auftreten.
Versuchs mal mit
SET DEFINE OFF
um die Variablenersetzung auszuschalten.
Das geht im SQL-Plus.
Ich greife auf ORACLE aus meiner MFC-Anwendung.
Und via ODBC kann ich SET DEFINE OFF irgendwie nicht verwenden.
m_dbCust.ExecuteSQL(„SET DEFINE OFF;“);
Ich bekomme dann: ORA-00922: Fehlende oder ungültige Option.
Oder mache ich hier wwas falsch?
Hallo Pater,
… und wenn das nicht klappt nimm den ASCII-CODE und rechne
das Zeichen um. Das funktioniert auf jeden Fall.
Wie sollte dann SQL-Statement aussehen?
INSERT INTO TEST(TEXT) VALUES(‚1chr(38)1 DSL-Flat‘);…
oder so ähnlich?
Danke
Alex
Hallo Pater,
… und wenn das nicht klappt nimm den ASCII-CODE und rechne
das Zeichen um. Das funktioniert auf jeden Fall.
Wie sollte dann SQL-Statement aussehen?
INSERT INTO TEST(TEXT) VALUES(‚1‘ ||chr(38)1 DSL-Flat’);…
oder so ähnlich?
Danke
Alex
INSERT INTO TEST(TEXT) VALUES(‚1‘ || chr(38) || ‚1 DSL-Flat‘);
sollte gehen.
Viele Grüße
Peter
Hallo Alex!
INSERT INTO TEST(TEXT) VALUES(‚1chr(38)1 DSL-Flat‘);…
oder so ähnlich?
Fast: INSERT INTO TEST(TEXT) VALUES(‚1‘||chr(38)||‚1 DSL-Flat‘);
Gruß,
Martin
Tomh
21. Juni 2005 um 08:31
7
Hi!
vielleicht geht irgendwie ein
SET ESCAPE ON
(Escape-Sequenz ist dann das ‚‘)
Grüße,
Tomh
PS: Auch für SQL-Statements gibt’s die ESCAPE-Klausel - allerdings weiß ich nicht, ob das für das INSERT auch funktioniert (für’s SELECT ohne Probleme)