# Gravar uma data no mysql

**URL:** <https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371>\
**Category:** Português\
**Created:** [August 4, 2014, 7:54pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371 "2014-08-04T19:54:49Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![Cauby\_Osorio](https://forum.xojo.com/letter_avatar_proxy/v4/letter/c/f1d935/32.png) [@Cauby\_Osorio](https://forum.xojo.com/u/Cauby_Osorio)\
**Post date:** [August 4, 2014, 7:54pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/1 "2014-08-04T19:54:49Z")

</div>

Criei uma janela que tem uma data de nascimento .  
Quando vou gravar no Mysql me retorna um erro.  
Sei que o Textfield.Text uma String, agora como converto este textfield em data para gravar no campo de um registro no Mysql

coloquei assim no meu codigo:

Dim Vdata As New Date  
[//vdata.SQLDate=](https://vdata.SQLDate=)“2014-08-04” outra tentativa que fiz de teste e no deu certo  
Dim vcerto As Boolean  
Vcerto = ParseDate(Prnascimento,Vdata) Prnascimento uma propriedade do tipo string

linha.Column(“nascimento”)=vdata // campo da tabela clientes do tipo data no mysql  
conn.InsertRecord(“clientes”, linha)

Me retorna um erro assim: parameters are not compatible with this function

Se algum puder ajudar agradeo.

---

<div class="post-metadata">

**Author:** ![Tiago\_Baciotti](https://forum.xojo.com/letter_avatar_proxy/v4/letter/t/57b2e6/32.png) [@Tiago\_Baciotti](https://forum.xojo.com/u/Tiago_Baciotti)\
**Post date:** [August 7, 2014, 12:33am UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/2 "2014-08-07T00:33:34Z")

</div>

Oi Cauby,

Quando vou gravar a data no banco (sqlite no meu caso), eu uso a ParseDate. Essa a funo que uso para receber um parmetro data e retornar no formato para gravar no banco:

[code] '-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=  
’ ConverteData  
’  
’ Autor: Tiago Baciotti Moreira  
’ Data : 9/dez/2013  
’  
’ Objetivo: Converte para formato data para gravaao no banco  
'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=  
dim d as date

if ParseDate(data, d) then  
return d  
else  
Dim r As RuntimeException  
r = New RuntimeException  
r.ErrorNumber = -1  
r.Message = “Erro na converso da data”  
Raise r  
end if

[/code]

---

<div class="post-metadata">

**Author:** ![Tiago\_Baciotti](https://forum.xojo.com/letter_avatar_proxy/v4/letter/t/57b2e6/32.png) [@Tiago\_Baciotti](https://forum.xojo.com/u/Tiago_Baciotti)\
**Post date:** [August 7, 2014, 12:34am UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/3 "2014-08-07T00:34:14Z")

</div>

E essa a funo que uso para validar se um valor est no formato data ou no:

[code] '-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=  
’ ValidaData  
’  
’ Autor: Tiago Baciotti Moreira  
’ Data : 22/12/2013  
’  
’ Objetivo: Verifica se a data est em um formato vlido.  
'-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=

dim d as date  
if ParseDate(data, d) then  
return true  
else  
return false  
end if  
[/code]

---

<div class="post-metadata">

**Author:** ![Cauby\_Osorio](https://forum.xojo.com/letter_avatar_proxy/v4/letter/c/f1d935/32.png) [@Cauby\_Osorio](https://forum.xojo.com/u/Cauby_Osorio)\
**Post date:** [August 7, 2014, 7:35pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/4 "2014-08-07T19:35:55Z")

</div>

Tentei algo parecido e no deu certo vou colocar abaixo o codigo.

Prnome = Lnome  
PrBairro = Lbairro  
Prcelular=Lcelular  
Prcep=Lcep  
Prcidade=Lcidade  
Prcnpj=Lcnpj  
Prcodmun=Lcodmun  
Premail=Lemail  
Prendereco=Lendereco  
Prfisicajuridica=Lfisicajuridica  
Prinsc=LInsc  
Prmasfem=Lmasfem  
Prnascimento=Lnascimento  
Prnumero=Lnumero  
Prtelefone=Ltelefone  
Prteltrab=Lteltrab  
Pruf=Luf

Dim vdata As Date  
//vdata = New Date

Dim linha As New DatabaseRecord

linha.Column(“nome”)=Prnome  
linha.Column(“endereco”)=Prendereco  
linha.Column(“numero”)=Prnumero  
linha.Column(“bairro”)=PrBairro  
linha.Column(“cod\_mun”)=Prcodmun  
linha.Column(“cidade”)=Prcidade  
linha.Column(“uf”)=Pruf  
linha.Column(“cep”)=Prcep  
linha.Column(“fisica\_juridica”)=Prfisicajuridica

'If ParseDate(Prnascimento,vdata) Then // aqui esta me retornado erro de compilao  
’ linha.Column(“nascimento”)=vdata // Parameters are not compatible with this funcition  
'End if

linha.Column(“ident\_insc”)=Prinsc  
linha.Column(“cpf\_cnpj”)=Prcnpj  
linha.Column(“telefone”)=Prtelefone  
linha.Column(“celular”)=Prcelular  
linha.Column(“tel\_trab”)=Prteltrab  
linha.Column(“email”)=Premail  
linha.Column(“mas\_fem”)=Prmasfem  
conn.InsertRecord(“clientes”, linha)

if conn.Error Then  
MsgBox "Erro na gravaao na tabela clientes " + conn.ErrorMessage  
Return  
End if

MsgBox “Registro gravado com Sucesso”

---

<div class="post-metadata">

**Author:** ![Cauby\_Osorio](https://forum.xojo.com/letter_avatar_proxy/v4/letter/c/f1d935/32.png) [@Cauby\_Osorio](https://forum.xojo.com/u/Cauby_Osorio)\
**Post date:** [August 7, 2014, 8:14pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/5 "2014-08-07T20:14:00Z")

</div>

Consegui resolver.  
No preciso converter em data para gravar no mysql eu tenho que passar com string mesmo s que a data tem que estar invertida.  
linha.Column(“nascimento”)=“1969/04/11”  
agora eu tenho outro problema como eu ainda no conheo a linguagem direito tenho que descobrir uma funo para eu inverter a string original.  
String original “11/04/1969” tenho que inverter essa string para “1969/04/11”

---

<div class="post-metadata">

**Author:** ![Rick\_Araujo](https://forum.xojo.com/user_avatar/forum.xojo.com/rick_araujo/32/251_2.png) [@Rick\_Araujo](https://forum.xojo.com/u/Rick_Araujo)\
**Post date:** [August 7, 2014, 8:55pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/6 "2014-08-07T20:55:20Z")

</div>

Voc no quer isso, voc quer AAAA-MM-DD. E ela est pronta em date.SQLDate

---

<div class="post-metadata">

**Author:** ![Valdemar\_De\_SOUSA](https://forum.xojo.com/user_avatar/forum.xojo.com/valdemar_de_sousa/32/21374_2.png) [@Valdemar\_De\_SOUSA](https://forum.xojo.com/u/Valdemar_De_SOUSA)\
**Post date:** [August 7, 2014, 9:02pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/7 "2014-08-07T21:02:13Z")

</div>

Ola,

Podes fazer assim :

dim d as new Date

d.Day = 11  
d.Month = 4  
d.Year = 1969

dim linha as new DatabaseRecord

linha.DateColumn(“nascimento”)= d.SQLDate

---

<div class="post-metadata">

**Author:** ![Cauby\_Osorio](https://forum.xojo.com/letter_avatar_proxy/v4/letter/c/f1d935/32.png) [@Cauby\_Osorio](https://forum.xojo.com/u/Cauby_Osorio)\
**Post date:** [August 8, 2014, 12:40am UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/8 "2014-08-08T00:40:40Z")

</div>

Obrigado o date.SQLDate serve bem.

Obrigado a todos por me responderem

---

<div class="post-metadata">

**Author:** ![system](https://forum.xojo.com/uploads/default/original/1X/455b4dcc0e61630e9f81940004ddffa49c432a46.png) [@system](https://forum.xojo.com/u/system)\
**Post date:** [October 29, 2020, 5:21pm UTC](https://forum.xojo.com/t/gravar-uma-data-no-mysql/18371/9 "2020-10-29T17:21:39Z")

</div>


