|
|
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Ситуация такова. На sql server затягиваются данные из фоксовской таблицы через openrowset. В таблице фокса дата представлена в поле "DO" в виде текстового поля формата DD/MM/YYYY (c(10)). При закачке из таблицы нужно отобрать позиции по указанному интервалу дат. Проблема в том, что внутри openrowset формат даты по умолчанию американский MM/DD/YYYY, следовательно у меня не получается задать сравнение, т.к. дата таблица будет некорректной (например начиная с 13/01/2008 в американском формате будет некорректной) Код: plaintext Как привести даты к одному формату ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:35 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
1. Используйте формат YYYYMMDD 2. Перед использованием функции OPENROWSET установите: SET DATEFORMAT DMY С уважением, Алексей ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:37 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
На клиенте SET DATEFORMAT DMY установлен. В ХП, где выполняется openrowset "снаружи" OPENROWSET формат даты DMY, а вот внутри OPENROWSET - MDY, в строке SELECT * FROM mytable.dbf WHERE ... Как в ХП, повлиять на внутренности OPENROWSET ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:40 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Генетический мусорКак в ХП, повлиять на внутренности OPENROWSET ? Использовать универсальный формат представления даты как уже сказал Aleksey-K ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:51 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Вместо ctod("01/01/2008"),ctod("31/01/2008") лучше использовать {^2008-01-01}, {^2008-01-31} ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:54 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
PaulWist Генетический мусорКак в ХП, повлиять на внутренности OPENROWSET ? Использовать универсальный формат представления даты как уже сказал Aleksey-K Допустим у вас установлен формат даты AMERICAN. Каким образом дату в виде строки "31/01/2008" привести в формат 20080331 ? SET DATE AMERICAN ? CTOD(DTOS(CTOD('31/03/2008'))) > / / ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:55 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Есть еще функция DATE([nYear, nMonth, nDay]) Returns Date Arguments nYear Specifies the year returned in the year 2000-compliant Date value. nYear can be a value from 100 to 9999. nMonth Specifies the month returned in the year 2000-compliant Date value. nMonth can be a value from 1 to 12. nDay Specifies the day returned in the year 2000-compliant Date value. nDay can be a value from 1 to 31. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 16:59 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Генетический мусорДопустим у вас установлен формат даты AMERICAN. Каким образом дату в виде строки "31/01/2008" привести в формат 20080331 ? SET DATE AMERICAN ? CTOD(DTOS(CTOD('31/03/2008'))) > / / Вы издеваетесь? С каких это пор '31/03/2008' стало американским форматом? Результат CTOD('31/03/2008') смотрели? И как? Пишите даты как я вам показал, это не зависящий от настроек формат. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:03 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Проходящий, вы не врубились в то что мне нужно, читайте внимательно. У меня в поле DO дата в символьном формате в виде DD/MM/YYYY. Каким образом я ее представлю в формате {^YYYY-MM-DD} без шаманства с LEFT и SUBS ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:09 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Генетический мусорПроходящий, вы не врубились в то что мне нужно, читайте внимательно. У меня в поле DO дата в символьном формате в виде DD/MM/YYYY. Каким образом я ее представлю в формате {^YYYY-MM-DD} без шаманства с LEFT и SUBS ? Никаким. Даты надо хранить в полях соответствующего типа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:13 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Генетический мусорУ меня в поле DO дата в символьном формате в виде DD/MM/YYYY. Каким образом я ее представлю в формате {^YYYY-MM-DD} без шаманства с LEFT и SUBS ? Никак. Только если SET DATE GERMAN предварительно поставить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:15 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
Dima T Генетический мусорУ меня в поле DO дата в символьном формате в виде DD/MM/YYYY. Каким образом я ее представлю в формате {^YYYY-MM-DD} без шаманства с LEFT и SUBS ? Никак. Только если SET DATE GERMAN предварительно поставить Это не GERMAN, а BRITISH. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:17 |
|
||
|
Как в OpenRowSet прописать дату в формате DMY ?
|
|||
|---|---|---|---|
|
#18+
проходящий.Это не GERMAN, а BRITISH. Это не важно. Для работы CTOD() любой из 2-х подойдет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.03.2008, 17:20 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=35225077&tid=1587955]: |
0ms |
get settings: |
8ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
54ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
67ms |
get tp. blocked users: |
2ms |
| others: | 190ms |
| total: | 358ms |

| 0 / 0 |
