Testando o PowerBuilder com o Oracle 11g, considerando-se todas as configurações de Client, Regional Settings e DecimalSeparator.
1. Client em Inglês e
1.1. Configuração regional em português e decimal separator como “.”, “,” e sem o separator;
1.2. Configuração regional em inglês e decimal separator como “.”, “,” e sem o separator;
2. Client em Português e
2.1. Configuração regional em português e decimal separator como “.”, “,” e sem o separator;
2.2. Configuração regional em inglês e decimal separator como “.”, “,” e sem o separator;
Todos os testes funcionaram com sucesso, mas com algumas observações:
1. É IMPORTANTE que o DBParm contenha: DisableBind=1,StaticBind=1
(Estes dois parâmetros devem vir no começo ou logo após o DecimalSeparator, caso opte por utilizá-lo. Não ocorreram erros no banco de dados);
2. Todos os testes foram feitos respeitando a configuração regional, ou seja, se estava em inglês eu digitava “.” para separar o decimal, se estava em português eu digitava “,”;
3. Com o Client em Inglês, não obtive erro algum, tudo funcionou, mas com o Client em Português e DecimalSeparator = “.”, independente do Configurações Regionais e do separador digitado na tela, o valor enviado pra base não considera a casa decimal, ou seja, se você digita 1.3, vai pra base 13!
Resumindo: Colocando-se DisableBind=1,StaticBind=1 no DBParm, e evitando-se a configuração: Client em português e DecimalSeparator=’.’, tudo irá funcionar corretamente.
Obs: Para saber se o Client está em inglês ou português, basta executar: “select * from nls_session_parameters;” na estação que se deseja testar. Para saber as configurações do servidor, basta trocar a tabela por nls_database_parameters.
Latest posts by Breno RdV (see all)
- O que é Metaclass e como ela funciona. (#python #dev #metaclass) - janeiro 11, 2023
- Entenda a mágica dos Generators. (#python, #dev, #generator, #iterator) - dezembro 28, 2022
- Ordenando um DataFrame por múltiplas colunas. (#python #pandas #jupyter #dev #data) - agosto 3, 2022