2016-06-06 5 views
-1

Ich muss eine Abfrage aus einer Datenbanktabelle mit ResultSet abrufen und in meinem Java-Programm für die weitere Verarbeitung verwenden. Die Abfrage sieht folgendermaßen aus.Wie String von Datenbank mit doppelten Anführungszeichen erhalten

CREATE INDEX "POLICY_STUDIO_SE"."EL_LMT_FTR_TL ON "PSE"."SE_EL_LMT_FTR_" (NVL("RESOURCE_ID",'@@')) 
PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS 
STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645 
PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT) 
TABLESPACE "ID" 

Die doppelten Anführungszeichen (") wird nicht zulassen, dass mir diese ganze Abfrage als Java-String erhalten.

jemand irgendwelche Vorschläge auf sich zur Verfügung stellen kann?

+0

Haben Sie versucht, die Anführungszeichen einfach durch einfache Anführungszeichen zu ersetzen? Wie wäre es mit doppelten Anführungszeichen mit einem Escape \ "" <- so. – durbnpoisn

+0

@durbnpoisn kann Abfrage nicht ändern, es ist von Orakel Meta-Datentabelle, wenn ich diese Abfrage mit ResultSet getString ("XXXX") -Methode abholen, muss ich es in einer String-Typ-Variable erhalten. Daher kann ich es nicht formatieren, da es nur eine Unterzeichenfolge für das erste doppelte Zitat wäre (CREATE INDEX). Wenn ich eine vollständige Abfrage erhalten hätte, kann ich das ersetzen. –

+0

'CREATE INDEX' ist eine SQL DDL-Anweisung, keine ** Abfrage **. Eine SELECT-Anweisung ist eine Abfrage. --- Wenn diese Anweisung als Text in einer 'VARCHAR'-Spalte steht, holen Sie [...] mit ResultSet * aus einer Datenbanktabelle * durch Aufruf von' rs.getString (...) '. Zitate im Textwert sind kein Problem. --- Wolltest du fragen, wie man diese SQL-Anweisung direkt in eine Java-Quelldatei als String-Literal schreibt? Weil das eine ganz andere Frage ist, für die Sie bereits eine Antwort bekommen haben, d. H. Die Anführungszeichen mit '' ' Es hat auch nichts mit 'ResultSet' zu tun. – Andreas

Antwort

0

Sie haben das Zitat zu entkommen wie :

"\"" 

die vollständige Zeichenfolge entkam In Ihrem Fall ist:

String s= "CREATE INDEX \"POLICY_STUDIO_SE\".\"EL_LMT_FTR_TL ON \"PSE\".\"SE_EL_LMT_FTR_\" (NVL(\"RESOURCE_ID\",\'@@\'))"+ 
     "PCTFREE 10 INITRANS 2 MAXTRANS 255 COMPUTE STATISTICS"+ 
     "STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645"+ 
     "PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)"+ 
     "TABLESPACE \"ID\""; 
+0

@ Aayush Agrawal. Es tut mir leid, dass ich missverstehe, was du fragst. Ich werde meine Antwort ändern –

Verwandte Themen