Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sanderson

Formatação do campo Tipo Data

Recommended Posts

Pessoal, será que alguém sabe como configurar fisicamente o campo tipo DATE no banco MySQL para o mesmo receber e enviar da no formato nacional ?Deve existir uma maneira de mudar a região ou então colocar uma mascara, para que qualquer chamada externa o mesmo retorne DD/MM/AAAA em vez de AAAA-MM-DD.Se alguém sober como, me fale.Obrigado.PS: Não serve inverte no PHP, quero fisicamente no servidor do MySQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para mostrar usa o seguinte:

 

select campox,campoy,date_format(data,'%d/%m/%Y') from tabela

Agora na hora de gravar você terá que controlar pela sua aplicação.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Wallace realmente funciona perfeitamente, um dos maiores problemas aqui e o tal do WHERE nele eu não estou conseguindo fazer a pesquisa, tentei yusar um recurso que exite no MySQL que é SELECT STR_TO_DATE('10.31.2003', GET_FORMAT(DATE, 'USA')), segundo a instrução ela converte tudo para o formato do nosso país, mais não esta dando certo, você sabe me orientar em relação a isso ?

 

Agora a outra pesquisa que estou montando é:

Assim não funciona: (Só que preciso que seja assim)

SELECT date_format(V_DATA,'%d/%m/%Y') FROM t_data_2 WHERE date_format(V_DATA,'%d/%m/%Y') BETWEEN '25/09/2003' AND '03/10/2003'

 

Como devo fazer para usar a forma assim, pq a data selecionada é a que pego na pagina na hora que a pessoa submeti o formulario.

 

Assim funciona:

SELECT date_format(V_DATA,'%d/%m/%Y') FROM t_data_2 WHERE V_DATA BETWEEN '2003-09-25' AND '2003-10-03'

 

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, o que eu faria é usar o substr para inverter a data que vem do formulário (03/10/2003).

 

Isso resolveria muito bem seu problema, certo ?

 

Se você quer fazer pelo mysql dá uma pesquisada na função substring()

 

substring(data,6,2)
pegará o mês de uma data

 

Só não entendi uma coisa, você disse no início que "tinha" que ser pelo mysql e no segundo post disse que vem do formulário ?!?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Legal, tentarei do jeito que você disse. Agora talvez não fui bem claro, com certeza o valor vem do formulario, so que como no ACCESS ou no SQL SERVER quando especificamos o campo físico eu tenho como falar com ele deve ser entrar o sair, sei que no MySQL isso não é possível, só que sei que podemos força ele a entender como queremos a Data.Sei que no MySQL quando queremos fazer a entrada ou saida assumirem um determinado formato devemos mudar uma variavel interna dele que é a DATE_FORMAT.Executando esta linha junto com o select... ou não.SET DATE_FORMAT = get_format(DATE, 'EUR');SELECT...;Falão que é assim, mais não consegui mudar o valor nem por reza, deve estar faltando alguma coisa que eu não notei...Na forma descrita assim o MySQL "SERVIDOR" executa o comando no formato entrada e saida (se for o caso) como %d-%m-%Y. (Diz no site do MySQL).

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.