COLLATE Latin1_General_CS_AS
ist kein Oracle-Syntax-Ding, es sieht aus wie ein SQL-Server-Ding
Ihr grundlegendes SQL könnte sein:
ResultSet rs = statement.executeQuery("SELECT NAMES, AUTHOR, ID FROM BOOKS WHERE upper(NAMES) LIKE upper('%"+word+"%') OR upper(AUTHOR) LIKE upper('%"+word+"%') ");
Dies ist jedoch unabhängig davon ein vollständiger Tabellen- / vollständiger Index-Scan, der also nicht schnell sein wird. Für schnelle Zeichenfolgensuchen hat Oracle Oracle Text . Ich würde vorschlagen, dass Sie sich darüber informieren und einen Textindex implementieren, wenn Sie diese Art von unbegrenzten Suchen (in großen Tabellen) durchführen müssen.