Passo a passo: | Conteúdo

1 - Introdução
Na versão 11.80, o provedor de dados é o Microsoft OLE DB Provider for Oracle, disponibilizado pela própria Microsoft, enquanto que na versão 12 o provedor de dados é o Devart ADO .Net Provider, disponibilizado pela empresa Devart. 2 - Função TO_DATE()
TO_DATE( string1 [, format_mask] [, nls_language] ) |
Descrição dos Parâmetros:
Nº | Nome | Descrição | Obrigatoriedade | Outras Informações |
---|
1 | string1 | Cadeia de caracteres que será convertida em uma data válida. |  | | 2 | format_mask | Máscara que será utilizada para a correta formatação da data. O formato (segundo parâmetro) sempre deve corresponder ao formato da string (primeiro parâmetro), assim o interpretador vai identificar qual formato esta entrado para poder converter a string em data. |
|  | Alguns dos formatos disponíveis: N° | Nome | Descrição |
---|
1 | YEAR | Ano, soletrado | 2 | YYYY | Ano (4 dígitos) | 3 | YYY YY Y | Últimos 3, 2, ou 1 digito(s) do ano. | 4 | IYY IY I | Últimos 3, 2, ou 1 digito(s) do ano (Padrão ISO). | 5 | IYYY | Ano (4 dígitos baseados no padrão ISO) | 6 | RRRR | Recebe um ano (2 dígitos) e retorna um ano (4 dígitos) Um valor entre 0-49 irá retornar um ano (20xx). Um valor entre 50-99 irá retornar um ano (19xx). | 7 | Q | 1/4 de um ano (1, 2, 3, 4; JAN-MAR = 1). | 8 | MM | Mês (01-12; JAN = 01). | 9 | MON | Nome abreviado do mês. | 10 | MONTH | Nome do mês preenchido com espaços em branco para completar 9 caracteres. | 11 | RM | Numeral romano referente ao mês (I-XII; JAN = I). | 12 | WW | Semana do ano (1-53) onde a semana 1 começa no primeiro dia do ano e continua ao sétimo dia do ano. | 13 | W | Semana do mês (1-5) onde a semana 1 começa no primeiro dia do mês e termina ao sétimo. | 14 | IW | Semana do ano (1-52 ou 1-53) baseado no padrão ISO. | 15 | D | Dia da semana (1-7). | 16 | DAY | Nome do dia. | 17 | DD | Dia do mês (1-31). | 18 | DDD | Dia do ano (1-366). | 19 | DY | Nome abreviado do dia. | 20 | J | Dia juliano; O número de dias desde 1 de janeiro de 4712 A.C. | 21 | HH | Hora do dia (1-12). | 22 | HH12 | Hora do dia (1-12). | 23 | HH24 | Hora do dia (0-23). | 24 | MI | Minutos (0-59). | 25 | SS | Segundos (0-59). | 26 | SSSSS | Segundos após a meia-noite (0-86399). | 27 | AM, A.M., PM, ou P.M. | Indicador Meridiano. | 28 | AD ou A.D | Indicador AD. | 29 | BC ou B.C. | Indicador BC. | 30 | TZD | Informações do Horário de Verão. | 31 | TZH | Hora do fuso horário. | 32 | TZM | Minutos do fuso horário. | 33 | TZR | Região do fuso horário. |
| 3 | nls_language | Linguagem utilizada na conversão da cadeia de caracteres em uma data válida |  | |
Se aplica a:A função TO_DATE() pode ser usada nas seguintes versões do Oracle/PLSQL: Nº | Versão |
---|
1 | Oracle 12c | 2 | Oracle 11g | 3 | Oracle 10g | 4 | Oracle 9i | 5 | Oracle 8i |
Exemplo:Vamos observar alguns exemplos do uso da função TO_DATE(): mydate = '2003-07-09' TO_DATE(mydate, 'dd/MM/yyyy') Resultado: 09/07/2003 |
mydate = '2003-07-09' TO_DATE(mydate, 'DDMMYY') Resultado: 090703 |
mydate = '2002-03-15' TO_DATE(mydate, 'ddmmyyyy') Resultado: 15032002 |
2.1 - Microsoft Provider x Devart Provider - TO_DATE()
Existem diversas diferenças entre esses dois provedores de dados, mas vamos focar apenas na função TO_DATE().
A principal diferença é que o Microsoft OLE DB Provider for Oracle, ao executar a função TO_DATE(), através de algumas validações internas, faz com que campos do tipo DateTime possam ser utilizados como parâmetro dessa função, sem ocasionar exceções, enquanto que o Devart ADO .Net Provider, funciona exatamente como o próprio banco de dados Oracle, levantando exceções, quando o tipo de campo utilizado como parâmetro da função TO_DATE() é do tipo DateTime.
|