|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
Таблицы формата DBF c помощью DTS перенесли на MS SQL 2000. Поля типа DATE преобразовались в поля типа SMALLDATETIME. Из VFP6.0 SP5 вытаскиваем с сервера те же таблицы. Теперь те же поля стали DATETIME. Можно ли получить в VFP курсор с Сервера с полями типа DATE? Или это принципиально невозможно? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2003, 21:46 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
Если Вы вытаскиваете данные с помощью Remote View, то можно переопределить свойство поля Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2003, 22:07 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
=>vklepko Вытаскиваем данные с помощью сквозного запроса в курсор. ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2003, 21:58 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
Как управлять типами полей в результирующем курсоре, который возвращает SQLExec, я не знаю. И хороших идей по этому поводу не имею. Нехорошие идеи есть и все они проигрывают по сравнению с использованием remote view. А можно поподробней о Вашей проблеме: отображется на экране не так как хотелось бы?, обработка в коде рассчитана на тип date?, используется ли полученный курсор для модификации данных через TableUpdate()?, существует ли в проекте сама база, куда можно добавить remote view? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2003, 17:56 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
Тут vklepko прав... Вроде CursorAdapter в VFP8 должен был решить эту проблему, но что-то такое ощущение разработчики просто позабыли . Установка типа d в CursorSchema ничего не меняет :(((. Остается тогда один вопрос. А оно вам надо? Проблема я так понимаю одна - удобное редактирование данного поля в гриде... Ну и тут в принципе можно извращнуться ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2003, 18:04 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
=>vklepko 1.Отображется на экране не так как хотелось бы. 2.Обработка в коде рассчитана на тип date. Много оперпаций сравнения дат и определения MIN и MAX даты по столбцу. И даты считаются одинаковыми если совпадают день, месяц, год. Как эти же функции поведут себя с полем DATETIME пока не проверял. 3.Полученный курсор используется для модификации данных(сразу создается как модифицируемый). TableUpdate не используется. 4.В проекте базы нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2003, 21:29 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
=>Kozerog 3.Полученный курсор используется для модификации данных(сразу создается как модифицируемый). TableUpdate не используется. Хочу уточнить: 1)Данные модифицируются через выполнение отдельных SQLExec или 2)Данные модифицируются в результате навигации по курсору - у курсора выставляются ключи, поля, CursorSetProp("SendUpdates",.t.) и используется optimistic row buffering? ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2003, 21:56 |
|
VFP поле DATE => MS SQL=> VFP поле DATETIME
|
|||
---|---|---|---|
#18+
=>Kozerog Одна из нехороших идей создать local cursor(ЧЕРЕЗ НЕГО UPDATE НА BACKEND НЕ ПОЙДЁТ!!!) на основании полученного из SQLExec, предварительно подменив тип поля Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.
В localCursor поле ModifiedDateTime имеет тип date. Проблемы с отображением не будет. Проблем с обработкой в коде не будет Зато будут проблемы с модификацией данных. localCursor нельзя заставить слать команды модификации данных на удалённую базу. Если у Вас для модификации используется SQLExec - проблем нет! Если модификации проходят через курсор, то нужно будет самостоятельно синхронизировать localCursor и remoteCursor. Microsoft предлагает В результате получим тип Character Не проверял, как будет работать. Думаю, что 1)Отображаться будет хорошо 2)Модификации будут проходить(при попытке insert/update SQL Server законвертирует char(10) в datetime неявно, главное, наверное , чтобы форматы совпадали - опять же не проверял) 3)с обработкой в существующем коде будут проблемы - MIN(), MAX() будут врать ... |
|||
:
Нравится:
Не нравится:
|
|||
16.06.2003, 23:39 |
|
|
start [/forum/topic.php?fid=41&msg=32181758&tid=1598213]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
53ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 16ms |
total: | 169ms |
0 / 0 |