Boa tarde...
Semana passada fui para a Argentina implantar um sistema, e encontrei o seguinte erro:
No sistema existe uma validação para saber se o dia informado é um Sábado ou Domingo, para descobrir se o dia informado é ou não um fim de semana utilizei o seguinte código:
select to_chaR(sysdate,'D')
from dual
Caso o resultado do select for 7 (Sábado) ou 1 (Domingo) realiza a validação.
O problema que aconteceu é que quando o windows está em espanhol, o Sábado fica como dia 6 e o Domingo como dia 7.
Alguém sabe alguma forma para deixar padrão? Hoje criamos parâmetros que identificam os dias...
Obrigado.
Data com Windows em Espanhol
-
- Moderador
- Mensagens: 1177
- Registrado em: Qui, 15 Out 2009 10:28 am
- Localização: Recife
Tem um parametro no to_char que você diz em qual NLS você quer que seja retornado o valor,
procure no forum,
abraço
procure no forum,
abraço
-
- Moderador
- Mensagens: 1396
- Registrado em: Sex, 01 Fev 2008 2:06 pm
- Localização: Rio de Janeiro - RJ
- Contato:

ALTER SESSION SET NLS_LANGUAGE = "BRAZILIAN PORTUGUESE";
DBMS_SESSION.SET_NLS ('NLS_LANGUAGE', 'PORTUGUESE');
DBMS_SESSION.SET_NLS ('NLS_TERRITORY', 'BRAZIL');
- fsitja
- Rank: OraSauro
- Mensagens: 611
- Registrado em: Seg, 19 Jan 2009 4:29 pm
- Localização: Gaúcho no Rio de Janeiro - RJ
"The scars exist to remind us that the past was real"
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html
OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist
Campanha: Como fazer uma pergunta e obter uma resposta.
http://tkyte.blogspot.com/2005/06/how-t ... tions.html
OCA & OCP Developer — OCE SQL Expert — OCS Data Warehousing Specialist
Dependendo da configuração de NLS_TERRITORY a semana começa em dias diferentes.
Conectado a:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
SQL> alter session set nls_territory = 'BRAZIL';
Sessão alterada.
SQL> select to_char(to_date('14/12/2009', 'DD/MM/YYYY'), 'D DAY', 'NLS_DATE_LANGUAGE = SPANISH'),
2 to_char(to_date('14/12/2009', 'DD/MM/YYYY'), 'D DAY', 'NLS_DATE_LANGUAGE = PORTUGUESE')
3 from dual;
TO_CHAR(TO_ TO_CHAR(TO_DATE
----------- ---------------
2 LUNES 2 SEGUNDA-FEIRA
SQL> alter session set nls_territory = 'ARGENTINA';
Sessão alterada.
SQL> select to_char(to_date('14/12/2009', 'DD/MM/YYYY'), 'D DAY', 'NLS_DATE_LANGUAGE = SPANISH'),
2 to_char(to_date('14/12/2009', 'DD/MM/YYYY'), 'D DAY', 'NLS_DATE_LANGUAGE = PORTUGUESE')
3 from dual;
TO_CHAR(TO_ TO_CHAR(TO_DATE
----------- ---------------
1 LUNES 1 SEGUNDA-FEIRA
SQL>
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Bing [Bot] e 4 visitantes