Eu tenho um banco de dados SQL Server (2008R2) rodando em uma caixa Windows 2003. Estou me conectando a ele usando outra caixa Win2003.
Quando seleciono um valor de data e hora no banco de dados, recebo de volta neste formato:
05/11/2014 12:07:46
No entanto, quando estou usando um sistema diferente (Win2008 conectando-se a um banco de dados 2008R2), estou recuperando-o em um formato mais esperado:
2014-11-02 10:53:00
Em ambos os casos, estou extraindo os valores por meio de um driver Microsoft OLE DB diretamente das tabelas do banco de dados. As instruções SELECT não estão convertendo esses valores de forma alguma. Isso está sendo extraído de algum código C++ e registrado em um arquivo. Quando me conecto usando o SSMS, os valores estão sempre em um formato mais esperado (sem AM/PM).
Minha pergunta:
Por que estou obtendo dois formatos separados da mesma versão do SQL Server? Esta é uma configuração do driver OLE DB em algum lugar?
Suas configurações regionais controlam a forma como as datas são exibidas. Tente alterar as configurações lá.