Access Date/Time

4 отговора 127 прегледа
#1

Access Date/Time

Здравейте! Сигурно сте имали подобен проблем. В базата данни трябва да записвам данни с които да представям дати. Как да направя така че SQL заявките да работят при различни системни настройки за датата, например при dd.mm.yyyy и dd.mm.yyyy 'г.'

Отговор
в отговор на student #2

Re: Access Date/Time

Function SQLDate(varDate As Variant) As String
If IsDate(varDate) Then
SQLDate = "#" & Format(varDate, "mm\/dd\/yyyy") & "#"
End If
End Function

There are 10 types of people in this world one who understand binary jokes and one who not
Отговор
в отговор на student #3

Re: Access Date/Time

Много е рисковано да се работи направо с дати, защото различните компютри имат различни настройки за дати. Аз бих те посъветвал да записваш датата като стринг в определена колона, да я преобразуваш в число чрез функцията DateSerial и да я запишеш в отделна колона в таблицата. По този начин можеш да сортираш данните по дати като всъщност ги сортираш по числата, записни във втората колона. Можеш да използваш обаче променливите за дати за изчисляване на дати. Например ако искаме да прибавим 10 дни към началната дата за да получим крайната ще стане:
Dim dtmNachData as Date
Dim dtmKrData as Date
dtmNachData =DateValue(10.02.2003)
KrDate=DateSerial(Year(dtmNachData),Month(dtmNachData )+10,Day(dtmNachData ))
Поне аз така правя.









Отговор
в отговор на Bil #4

Re: Access Date/Time

В предходния пример става въпрос за прибавяне на 10 месеца към началната дата, а не 10 дни. Извинявам се за грешката.

Отговор
в отговор на Bil #5

Re: Access Date/Time

ако става въпрос за СИКЮЕЛ заявки и по-точно за параметри към тях (както е написано по-горе) Бъзика и Абсцеса работят само и единствено по американски дати, както изрично е записано в документацията т.е. формата винаги е мм/дд/гггг.

За всички останали случаи съм абсолютно съгласен с теб.

There are 10 types of people in this world one who understand binary jokes and one who not
Отговор