2016-06-21 16 views
2

Hat Apache Derby eine Möglichkeit, eine Zeichenfolge durch eine andere Zeichenfolge zu ersetzen?Ersetzen Sie die Zeichenfolge in Apache Derby

Ich bin auf der Suche nach so etwas wie:

select 
    replace('bruce bogtrotter', 'bruce', 'john') 
from SYSIBM.SYSDUMMY1 

Antwort

3

Apache Derby nicht über eine native Funktion, aber es ist möglich, ein unter Verwendung der Bibliothek Apache Commons Lang mit erstellen.

die Lang-Bibliothek Herunterladen von here

call SQLJ.INSTALL_JAR('C:\path_to_libraries\commons-lang3-3.4.jar', 'APP.commons_lang', 0); 
call SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY('derby.database.classpath', 'APP.commons_lang'); 

create function replace (sourceString varchar(8000), searchString varchar(8000), replaceString varchar(8000)) 
returns varchar(8000) 
parameter style java no sql 
language java external name 'org.apache.commons.lang3.StringUtils.replace'; 

select 
    replace('bruce bogtrotter', 'bruce', 'john') 
from SYSIBM.SYSDUMMY1 

Es gibt eine Reihe weiterer nützlicher Funktionen here