@STRSUB

Utilizzare la funzione @STRSUB per sostituire le stringhe all'interno di una colonna o costante stringa (carattere). Racchiudere le stringhe letterali tra apici.

Per questa funzione, Oracle GoldenGate supporta l'uso di una sequenza di escape per rappresentare i caratteri in una colonna stringa in Unicode o nella codifica dei caratteri nativa dei sistemi operativi Microsoft Windows, UNIX e Linux. La colonna di destinazione deve essere un tipo di dati SQL Unicode se qualsiasi argomento viene fornito come Unicode.

Qualsiasi valore di codice a byte singolo da 1 a 255 può essere utilizzato in formato esadecimale o ottale per gli argomenti stringa. I valori esadecimali da A a F non fanno distinzione tra maiuscole e minuscole e il carattere iniziale "x" deve essere minuscolo. Il valore zero (0) (\x00 e \000) non è consentito perché è un terminatore di stringa.

Non sono supportati valori UNICODE.

Questa funzione non supporta i tipi di dati NCHAR o NVARCHAR.

Sintassi

@STRSUB
(<source_string>, <search_string>, <substitute_string>
[, <search_string>, <substitute_string>] [, ...])

Per i caratteri multibyte, è necessario utilizzare STRSUB() come indicato di seguito.

FIND_CATEGORY = @STRSUB (FIND_CATEGORY, '\u00A0', ''),

<source_string>

Stringa di origine, racchiusa tra virgolette singole, o il nome di una colonna di origine contenente i caratteri per i quali deve essere eseguita la sostituzione.

<search_string>

La stringa, racchiusa tra apici, per la quale deve essere eseguita la sostituzione.

<substitute_string>

La stringa, racchiusa tra apici, che verrà sostituita per la stringa di ricerca.

Esempi

Quanto segue restituisce xxABCxx.

@STRSUB ('123ABC123', '123', 'xx')

Quanto segue restituisce 023zBC023.

@STRSUB ('123ABC123', 'A', 'z', '1', '0')

Di seguito è riportato un esempio di sostituzione di ^Z con uno spazio utilizzando un argomento stringa esadecimale.

@strsub (col1,'\x1A',' '));