COLLATE Latin1_General_CS_AS
är inte en oracle-syntaxgrej, det ser ut som en sql-servergrej
din grundläggande sql kan vara:
ResultSet rs = statement.executeQuery("SELECT NAMES, AUTHOR, ID FROM BOOKS WHERE upper(NAMES) LIKE upper('%"+word+"%') OR upper(AUTHOR) LIKE upper('%"+word+"%') ");
men det här är en full tabell/full index scan oavsett, så det kommer inte att gå snabbt. för snabba strängsökningar har Oracle oracle-text a> . Jag skulle föreslå att du läser in i det och implementerar ett textindex om du behöver göra den här typen av obegränsade sökningar (på stora tabeller).