Wie bereits in der Überschrift zu lesen ist, kann ich in einem SYSCS_EXPORT_QUERY keine SQL-Statements angeben, welche in der where-Klausel auf varchar Felder gehen. Kann mir jemand einen Tipp geben was ich tun kann?
Geht:
Geht nicht:
Er meckert hier das ' an. Lasse ich es weg, kommt die Meldung, dass DEU keine gültige Spalte wäre. Beide Meldungen sind logisch. Nur wie kann ich jetzt die Datei entsprechend der Bedingung ausgeben? Meine gewünschten Spalten als INT erstellen und den Inhalt mit einem Schlüssel füllen möchte ich eigentlich nicht.
Gibt es außerdem die Möglichkeit die Alphazeichen in der Ausgabedatei wegzulassen? Benutze ich null wird der Default-Wert ("=doppelte Hochkommas) genommen. '' wird nicht zugelassen (java.sql.SQLException: A delimiter is not valid or is used more than once.).
Geht:
Java:
String sql = "select * from Customer where ID=2";
String import = "CALL SYSCS_UTIL.SYSCS_EXPORT_QUERY('" + sql + "','c:\test.csv',';','\"','UTF16')";
PreparedStatement preparedStatement = con.prepareStatement(import);
preparedStatement.execute();
Geht nicht:
Java:
String sql = "select * from Customer where COUNTRY='DEU'";
String import = "CALL SYSCS_UTIL.SYSCS_EXPORT_QUERY('" + sql + "','c:\test.csv',';','\"','UTF16')";
PreparedStatement preparedStatement = con.prepareStatement(import);
preparedStatement.execute();
Er meckert hier das ' an. Lasse ich es weg, kommt die Meldung, dass DEU keine gültige Spalte wäre. Beide Meldungen sind logisch. Nur wie kann ich jetzt die Datei entsprechend der Bedingung ausgeben? Meine gewünschten Spalten als INT erstellen und den Inhalt mit einem Schlüssel füllen möchte ich eigentlich nicht.
Gibt es außerdem die Möglichkeit die Alphazeichen in der Ausgabedatei wegzulassen? Benutze ich null wird der Default-Wert ("=doppelte Hochkommas) genommen. '' wird nicht zugelassen (java.sql.SQLException: A delimiter is not valid or is used more than once.).
Zuletzt bearbeitet: