Codifica caratteri Linux vs Oracle (AL32UTF8)

Lenia Martocchia
I'm New Here
I'm New Here
Those new to the Atlassian Community have posted less than three times. Give them a warm welcome!
May 31, 2024

All'interno della bin/sh il (run di Bamboo) devo codificare il charset verso Oracle, per la codifica dei caratteri speciali, che bamboo non riesce a converitre, portando sul DB caratteri non codificati. Esempio il simbolo dell'euro. Ho provato ad inserire nella shell qsto:

#/bin/sh
 
FILENAMES=$bamboo_filenames
USER=$bamboo_env_database_user
PASSWORD=$bamboo_env_database_password
HOSTNAME=$bamboo_env_database_hostname
PORT=$bamboo_env_database_port
SERVICE_NAME=$bamboo_env_database_servicename
 
bamboo_esito="OK"
 
export IFS=";"
LC_CTYPE=it_IT.UTF-8;
LANG=it_IT.UTF-8;
 
#ciclo per tutti i file da rilasciare
for filename in $FILENAMES; do
  #se il flag deploy.execute = true allora eseguo il deploy
  if [ "$bamboo_env_deploy_execute" = "true" ]; then
    sqlplus $USER/$PASSWORD@$HOSTNAME:$PORT/$SERVICE_NAME "DECLARE
    BEGIN
EXECUTE IMMEDIATE 'alter session set NLS_NUMERIC_CHARACTERS = 'AL32UTF8'; 
END;"
    sqlplus $USER/$PASSWORD@$HOSTNAME:$PORT/$SERVICE_NAME "@$filename" > ${filename}.log
    cat ${filename}.log
    retVal=$(cat ${filename}.log | grep 'ORA-' -c)
    if [ $retVal -ne 0 ]; then
        bamboo_esito="KO"
        exit 1
    fi
  fi
done
-----------------
ma non funziona, lo script che va a lanciare, contenente l'insert in tabella, restituisce i valori sbagliati. esempio di stringa nel values 'CSED €'.. Il simbolo dell'euro lo riporta con quadratini bianchi.
Qualcuno mi sa aiutare?
Grazie Lenia

0 answers

Suggest an answer

Log in or Sign up to answer
TAGS
AUG Leaders

Atlassian Community Events