editar valores - oracle

Este forum é destinado a perguntas relacionadas a Oracle, mas que não se enquadram nos forums acima. Aqui serão tratadas também sobre outras tecnologias da oracle, como o Workflow, BPEL, Spatial, OCS, etc.
Responder
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

estou utilizando o oracle 10g express. criei um tabela com varios campos DO TIPO number(14,2).
Quando estou inserindo valores ele só aceita se eu digitar o ponto como casa deciamal, ate ai tudo bem más ao fazer a ediçao de um outro registro já digitado tenho que passar por todos estes campos e trocar a , pelo . caso contrario não consigo gravar os dados.
o que fazer para melhorar isso?
tem soluçao?
Já mudei o simbolo decimal do meu windows para . mais nada mudou.

obrigado
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Pode rodar um ALTER SESSION. Daí vai mudar apenas para a sessão corrente.

Selecionar tudo

SQL> alter session set NLS_NUMERIC_CHARACTERS=',.';

Session altered.

SQL> select 12345.67 from dual;

  12345.67
----------
  12345,67

SQL> alter session set NLS_NUMERIC_CHARACTERS='.,';

Session altered.

SQL> select 12345.67 from dual;

  12345.67
----------
  12345.67

SQL> 
Infelizmente, não tem como rodar ALTER SYSTEM pra esse comando.
http://www.orafaq.com/parms/parm1322.htm

Só mudando o parametro do oracle.
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

continuo com o mesmo problema.
visualmente quando dou um select ok, mas quando quando entro no NLS ele continua do mesmo jeito fazendo com que na edição do registro eu tenha que trocar a , pelo .

obrigado
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

No RegEdit tem uma entrada ORACLE,
em,

Selecionar tudo

HKEY_LOCAL_MACHINE > Software > ORACLE
ai dentro tem algo como NLS_LANG ???

como está?
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

brazilian portuguese
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

faz aí no banco: show parameters nls
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

pelo site mostra BRAZILIAN no comando SQL(prompt) mostra AMERICAN. no regedit BRAZILIAN PORTUGUESE

não estou entendendo mais nada.
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

No site da Oracle quando você vai baixar o Oracle Express, tem dois links, OracleXE e OracleXEUNIV,

qual você baixou????

seu windows é Inglês?
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

baixei o OracleXEUNIV, eo meu windows é em portugues
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

o engraçado é que quando os dados estão sendo mostrados eles aparecem com a , quando peço para editar a linha mostra a , só que seu eu mandar gravar memos sem alterar nada eu não consigo, preciso então trocar a , pelo .
Mas apos gravar ele volta a me mostrar com a ,
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

Devia ter baixado o outro, rs

;)

tenta alterar o seu regedit, lá no NLS_LANG coloca AMERICAN,

AMERICAN_AMERICA.WE8ISO8859P1

faz esse teste aí
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

ainda posso instalar o outro pois estou apenas comecando agora se eu mudar a linguagem os usuários Vao perceber a troca da casa decimal?
diegolenhardt
Moderador
Moderador
Mensagens: 1177
Registrado em: Qui, 15 Out 2009 10:28 am
Localização: Recife

acredito que não, acho que isso vem da configuração do client,

na verdade assim, eu sempre usei a outra versão,

nunca tive problemas,

=/
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

você utiliza o proprio browse (pagina do banco) ou algum outro aplicativo para gerenciá-lo?
quando você pede para editar uma linha com valores numericos como ele aprensenta a casa decimal (, ou .)?
já tentei instalar a outra versão(ingles) mas não tive sucesso continua tudo como antes: se consulta via linha de comando os parametros NLS ele mostra o idioma e linguagem America/Americam. Via site do banco eme mostra Brazil/Brazilian Portuguese.
Tanto via linha comando ou site do banco digito os comandos para mudar a linguagem só que logo em seguida consulto e ele não muda nada e também não aprensenta mensagem de erro nos comandos. Aparentemente só resolve os problemas no SELECT más é como se não mudasse nada no Banco.
Estou quase desistindo por favor ajudem.

Obrigado
Avatar do usuário
dr_gori
Moderador
Moderador
Mensagens: 5024
Registrado em: Seg, 03 Mai 2004 3:08 pm
Localização: Portland, OR USA
Contato:
Thomas F. G

Você já respondeu a dúvida de alguém hoje?
https://glufke.net/oracle/search.php?search_id=unanswered

Então, pra gente entender melhor, coloque as seguintes informações:
* Você está usando qual tool pra fazer isso ? (Sql*Plus, TOAD, alguma outra, etc)
* Qual comando você está rodando ? Coloque também a resposta do banco.

Se a gente conseguir visualizar o que está acontecendo aí, certamente alguém vai conseguir ajudar...
informatica@cofina.com.br
Rank: Programador Pleno
Rank: Programador Pleno
Mensagens: 31
Registrado em: Seg, 08 Fev 2010 10:59 am
Localização: BOM JESUS DOS PERDÕES - SP

estou utilizando via http://127.0.0.1:8080/apex

em comandos SQL estou tentando:

Selecionar tudo

ALTER SESSION SET NLS_NUMERIC_CHARACTERS=".,";
não é apresentado nenhum erro, porem ao consultar o NLS ele mostra como estava antes, ou seja ",."

quando entro para editar um registro ele mostra todos os números com a "," como casa decimal, porem tenho que trocar tudo de "," para "." para porder gravar as alterações.

agora quado mudo as propriedades regionais do windows (painel de controle) para ingles(Estados Unidos) ao editar um registro ele mostra já com o "." como casa decimal aí durante a alteração do registro não preciso mais fazer a troca e funciona.
A unica questão é que gostaria de deixar o as conf. regionais do windows Brasil (Portugues) e não Inglês, más se não tiver outro jeito fazer o que?
Responder
  • Informação
  • Quem está online

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