Conversões do tipo de dados datetime (ODBC)
As conversões a seguir já estão definidas pelo ODBC ou são uma extensão consistente do ODBC. As conversões fornecidas por cada provedor são determinadas pela comunidade atendida pelo provedor e, com freqüência, existem inconsistências entre os resultados. Os valores entre colchetes são opcionais.
O formato de cadeias de caracteres datetime é 'aaaa-mm-dd[ hh:mm:ss[.9999999][ mais/menos hh:mm]]'
O formato de cadeias de caracteres de hora é 'hh:mm:ss[.9999999]'
O formato de cadeias de caracteres de data é 'aaaa-mm-dd'
As conversões de cadeias de caracteres permitem uma flexibilidade nos espaços em branco e na largura dos campos. Para obter mais informações, consulte a seção "Formatos de dados: cadeias e literais" de Suporte a tipos de dados para aprimoramentos de data/hora do ODBC.
Seguem as regras de conversão gerais:
Se não houver uma hora mas o receptor puder armazenar horas, a hora será definida como zero.
Se não houver uma data presente, mas o receptor puder armazenar datas, a data atual será usada.
Se não houver um fuso horário presente no tipo de dados que o cliente está utilizando, mas o servidor puder armazenar fusos horários, a data será armazenada no fuso horário do cliente. Observe que isso é diferente do comportamento do servidor.
Se não houver um fuso horário presente no tipo do servidor, mas o tipo do cliente tiver um fuso horário, a hora será convertida para UTC antes de ser armazenada no servidor.
Se houver uma hora presente, mas o receptor não puder armazenar horas, o componente de hora será ignorado.
Se houver uma data presente, mas o receptor não puder armazenar datas, o componente de data será ignorado.
Se ocorrer o truncamento de segundos ou frações de segundos ao converter do C para o SQL, um registro de diagnóstico será gerado com SQLSTATE 22008 e a mensagem "Estouro do campo datetime".
Se ocorrer o truncamento de segundos ou frações de segundos ao converter do SQL para o C, um registro de diagnóstico será gerado com SQLSTATE 01S07 e a mensagem "Truncamento de frações".
Nesta seção
Conversões do C para o SQL
Lista os problemas a serem considerados ao converter tipos do C em tipos de data/hora do SQL Server.Conversões de SQL em C
Lista os problemas a serem considerados ao converter tipos de data/hora do SQL Server em tipos do C.