|
|
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
При переходе с FoxPro 6 на 9 возникла следующая проблема: Код: plaintext 1. 2. 3. 4. 5. 6. в 6 версии, поля в cTmpTable были NULLABLE, а в 9 NOT NULL. это можно поправить не меняя логику, каким-нибудь SET"ом? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 13:42 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
SET NULL ON соответственно не решает вопрос... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 13:45 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
Как поля были сформированы на сервере, так они и попали в FoxPro. Версия тут вообще не при чем. Ищите проблему в Вашей процедуре sp_GetOrderForDoc. При указанных значениях параметров поля будут Nullable? На самом сервере, а не в среде FoxPro. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 14:02 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
ВладимирМКак поля были сформированы на сервере, так они и попали в FoxPro. Версия тут вообще не при чем. Ищите проблему в Вашей процедуре sp_GetOrderForDoc. на компьютере стоит две версии среды, в 6 работает в 9 ошибка при вставке в полученный курсор null. на одной и той же базе (процедуре), на одном и том же исходнике. логичен ли вывод что дело в среде? При указанных значениях параметров поля будут Nullable? да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 14:43 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
yta ВладимирМКак поля были сформированы на сервере, так они и попали в FoxPro. Версия тут вообще не при чем. Ищите проблему в Вашей процедуре sp_GetOrderForDoc. на компьютере стоит две версии среды, в 6 работает в 9 ошибка при вставке в полученный курсор null. на одной и той же базе (процедуре), на одном и том же исходнике. логичен ли вывод что дело в среде? Нет. Не логичен. Поскольку формирование результирующего курсора происходит вне среды FoxPro. Т.е. никакие настройки среды FoxPro просто физически не могут на него повлиять. Возможно, влияют какие-либо настройки драйвера ODBC. Вот цитата из HELP по VFP9 VFP9Null-значения в полях источников данных ODBC становятся null-значениями в курсоре Visual FoxPro, вне зависимости от установки SET NULL в Visual FoxPro во время, когда приложение извлекает удаленные данные. Дайте команду AFIELDS() на результирующие запросы в среде VFP6 и в VFP9 и посмотрите значение 5 столбца для полей, колторые должны быть Nullable. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 15:02 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
ВладимирМ Нет. Не логичен. Поскольку формирование результирующего курсора происходит вне среды FoxPro. Т.е. никакие настройки среды FoxPro просто физически не могут на него повлиять. Возможно, влияют какие-либо настройки драйвера ODBC. ODBC драйвер используется один и тот же... один и тот же sql сервер... условия вообще идентичны за исключением среды разработки. VFP9Null-значения в полях источников данных ODBC становятся null-значениями в курсоре Visual FoxPro, вне зависимости от установки SET NULL в Visual FoxPro во время, когда приложение извлекает удаленные данные. ок. уточняю мою проблему... если процедура возвращает не пустой рекордсет так всё и происходит, что в 6, что в 9... если же он пустой то, полученные структуры курсора у 6 и 9 отличаются ограничением на null. Дайте команду AFIELDS() на результирующие запросы в среде VFP6 и в VFP9 и посмотрите значение 5 столбца для полей, колторые должны быть Nullable. буду пробовать, спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 15:32 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
если же он пустой то, полученные структуры курсора у 6 и 9 отличаются ограничением на null. Если дело именно в этом, то отличаются они не только этим. В 9-ке SQL-движок более приближен к стандарту SQL и изменен возвращаемый результат именно в таком случае. Подробности в хелпе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 15:41 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
проходящий.Если дело именно в этом, то отличаются они не только этим. В 9-ке SQL-движок более приближен к стандарту SQL и изменен возвращаемый результат именно в таком случае. Подробности в хелпе. What's New in Visual FoxPro 9 смотреть бесполезно, так как он описывает изменения с 8 версии, что логично ) Я на форум написал именно потому, что сам найти ответ в справке не могу, и в расчете на то, что если кто-нибудь сталкивался с такими "проблемами" даст ответ... Можно ссылку в хелп, где описаны эти подробности? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 17:54 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
проходящий.. В 9-ке SQL-движок более приближен к стандарту SQL ... что это за стандарт такой? ) MS SQL 2005 ему соответсвует? при любых вариантах работать будет: Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 18:02 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
Прошу прощения за введение в некоторое заблуждение. Мое высказывание об изменении поведения select относилось только к родным select'ам, при том с агрегирующими функциями, а не к SQLExec. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. Может автор топика попробует таки сделать репро код, демонстрирующий описанное им поведение? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2007, 18:36 |
|
||
|
FoxPro 6 > 9
|
|||
|---|---|---|---|
|
#18+
проходящий. Может автор топика попробует таки сделать репро код, демонстрирующий описанное им поведение? обязательно, в принципе в первом посте постарался это сделать, но напишу подробней... сейчас занят поиском решения без изменения кода... хотя это кочечно возможно, но очень неприятно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.12.2007, 15:27 |
|
||
|
|

start [/forum/topic.php?fid=41&msg=35020794&tid=1588364]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
35ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 319ms |

| 0 / 0 |
