|
|
|
int и smalldatetime
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста. В Access базе конвертация даты из int в smalldatetime проходит как 37354=08.04.2002 Повторяю в QA: set dateformat ymd select Convert(datetime, convert(int,37354),4) select Convert(int, convert(smalldatetime,'2002-04-08')) результат: ------------------------------------------------------ 2002-04-10 00:00:00.000 ----------- 37352 Где проблема в таком несовпадении? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 09:57:02 |
|
||
|
int и smalldatetime
|
|||
|---|---|---|---|
|
#18+
Где проблема в таком несовпадении? Проблемма в том что акцесси SQL по разному конвертят дату в число. Чтобы не наступать на эти грабли, ИМХО, более безопасным является метод передачи дат через строку формата определенного стандарта. Я пердпочитаю, например, стандарт ANSI со столетием (yyyy.mm.dd). Хотя мне нравится и ISO со столетием (yyyymmdd). Первый является американским, второй международным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 10:51:44 |
|
||
|
int и smalldatetime
|
|||
|---|---|---|---|
|
#18+
Когда из Access'а перегоняешь надо отнимать 2. А причина в том, что все офисные программы (Access,Excell,...) работают на OLE и скорее всего для работы с датами юзают сишный класс COleDateTime, так вот он также имеет разницу с MSSQL в 2 дня. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 11:28:17 |
|
||
|
int и smalldatetime
|
|||
|---|---|---|---|
|
#18+
в VBA даты считаются от 30 декабря 1899 года, а в SQL с 1 января 1999, вот и разница в 2 дня. Если хочешь, можешь сам проверить: 1. Запусти из VB: Dim d As Date Dim b As Long d = #1/1/1900# b = Int(d) MsgBox Str(b) выдает 2 2. в SQL set dateformat dmy declare @date datetime select @date='01.01.1900' select convert(int,@date) go возвращает 0 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2002, 12:37:53 |
|
||
|
|

start [/forum/topic.php?fid=46&fpage=3365&tid=1818316]: |
0ms |
get settings: |
8ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
49ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 229ms |
| total: | 353ms |

| 0 / 0 |
