Toon posts:

[VB.NET/SQL] datum naar db via sql gaat fout

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

Uit een datetimepicker haal ik een datum die ik via sql naar een access databank schrijf, hier geen probleem.

Ook doe ik een SELECT ....WHERE op deze datum, en zolang dat de dag kleiner is dan 12 denkt sql dat dit de maand is, is de dag 13, dan is het goed.

SQL code bij het wegschrijven :


Visual Basic:
1
2
3
Dim strSQL As String = "INSERT INTO tbldatum VALUES (" & maxnummer & ",'" & _
  Convert.ToInt32(txtid.Text) & "', '" & (txtnaam.Text) & "','" & _
  Convert.ToDateTime(dtpDatum.Value.Date) & "')"


SQL code voor het ophalen :


Visual Basic:
1
Dim strSQL As String = "SELECT id, naam, datum FROM tbldatum WHERE datum = #" & dtpDatum.Value.Date & "#"


dus als ik in de dtp 13/03/2007 kies haalt hij 13 maart 2007 op uit de databank, kies ik in de dtp 11/03/2007 haalt hij 3 november uit de databank.

Ik weet dat sql altijd amerikaanse datum's neemt, maar hoe kan ik dit oplossen?


Thanks

[ Voor 11% gewijzigd door RobIII op 29-03-2007 11:56 . Reden: Tables :X vervangen door codetags. ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:54
Parametrized Queries
Param. Queries 2

[ Voor 32% gewijzigd door whoami op 29-03-2007 11:11 ]

https://fgheysels.github.io/


  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Verwijderd schreef op donderdag 29 maart 2007 @ 11:05:
Ik weet dat sql altijd amerikaanse datum's neemt, maar hoe kan ik dit oplossen?
Dat is helemaal niet zo; is afhankelijk van de locale waarin je SQL draait. Verder wat whoami zegt; maar mocht je dan toch zelf je query als string in mekaar willen flansen, gebruik dan de ISO notatie. Die gaat altijd goed: yyyymmdd.

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij