UNIX

Dúvidas, dicas e truques de PL/SQL. Aqui também vão assuntos relacionados a pacotes, triggers, funções, Java-Stored Procedures, etc
Responder
silvadoneg
Rank: Estagiário Pleno
Rank: Estagiário Pleno
Mensagens: 5
Registrado em: Ter, 16 Mar 2010 2:05 pm
Localização: Santo André
Allan Donegá

Caros,
Estou com o seguinte problema:

Tem uma string com o caractere '&', só que eu tenho que mudar este caractere para um underline '_' com a instrução update.

Só que ao executar o script no UNIX, o ambiente pede para entrar com um valor qualquer porque o ambiente UNIX e sqlplus identifica o & como uma passagem de parametro.
Como faço para tratar este problema?

ex:

update table
set campo1='ABC_D'
where campo1 = 'ABC&D'
victorhugomuniz
Moderador
Moderador
Mensagens: 1396
Registrado em: Sex, 01 Fev 2008 2:06 pm
Localização: Rio de Janeiro - RJ
Contato:
:D

1-

Selecionar tudo

SQL> set escape on
SQL> insert into dept1 values(80,'Research \& Developement',2000);

1 row created.

SQL> select * from dept1 where did=80;

       DID DNAME                                COMM
---------- ------------------------------ ----------
        80 Research & Developement              2000
2-

Selecionar tudo

SQL> create table a (col1 varchar2(50));

Table created.

SQL> set scan off;
SQL> insert into a values ('The ampersant = &');

1 row created.

SQL> select ascii('&') from dual;

ASCII('&')
----------
        38

SQL> set scan on
SQL> insert into a values ('The second ampersant = '||chr(38));

1 row created.

SQL> select * from a;

COL1
--------------------------------------------------
The ampersant = &
The second ampersant = &

SQL> drop table a
  2  /

Table dropped.
Responder
  • Informação
  • Quem está online

    Usuários navegando neste fórum: Nenhum usuário registrado e 5 visitantes