Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ADD Column в курсор - ошибка / 6 сообщений из 6, страница 1 из 1
11.08.2005, 03:36:38
    #33209414
Сегун
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADD Column в курсор - ошибка
Почему не работает, мне кажется должно:

Код: plaintext
1.
2.
3.
4.
5.
SELECT tmpMainTable
    AFIELDS(aryMainTable)
    CREATE CURSOR cMainTable FROM ARRAY aryMainTable
    SELECT cMainTable
    ALTER TABLE cMainTable ADD COLUMN Pr2 C( 20 ) 
    ALTER TABLE cMainTable ADD COLUMN Am2 N( 10 , 3 ) NULL

Выдает ошибку «Invalid operation for the cursor» и останавливается на предпоследней строчке
...
Рейтинг: 0 / 0
11.08.2005, 07:39:37
    #33209472
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADD Column в курсор - ошибка
СегунПочему не работает, мне кажется должно:

Код: plaintext
1.
2.
3.
4.
5.
SELECT tmpMainTable
    AFIELDS(aryMainTable)
    CREATE CURSOR cMainTable FROM ARRAY aryMainTable
    SELECT cMainTable
    ALTER TABLE cMainTable ADD COLUMN Pr2 C( 20 ) 
    ALTER TABLE cMainTable ADD COLUMN Am2 N( 10 , 3 ) NULL

Выдает ошибку «Invalid operation for the cursor» и останавливается на предпоследней строчке
У меня все четко идет. VFP80 SP1.
...
Рейтинг: 0 / 0
11.08.2005, 08:16:20
    #33209495
Сегун
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADD Column в курсор - ошибка
Интересно, что подобный код работает у меня и в VFP6, но вот в девятке выдает ошибку
...
Рейтинг: 0 / 0
11.08.2005, 09:25:51
    #33209599
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADD Column в курсор - ошибка
Hi, Сегун!
Только что проверил и на VFP90 идет!!!
...
Рейтинг: 0 / 0
11.08.2005, 09:59:35
    #33209675
Владимир СА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADD Column в курсор - ошибка
Hi, Сегун!
Посмотреть м.б. твой <tmpMainTable>. Можешь приложить файлик.
...
Рейтинг: 0 / 0
13.08.2005, 01:18:02
    #33214021
Igor Korolyov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
ADD Column в курсор - ошибка
Hi Сегун!

В сообщении об ошибке ЧЁТКО написано почему так делать нельзя. В хелпе
кстати тоже всё описано:

ALTER TABLE might not produce consistent results when used with Visual
FoxPro cursors created by the CREATE CURSOR command. In particular, you can
create a Visual FoxPro cursor with features, such as long field names, that
are normally available only with tables that are part of a database
container. ALTER TABLE saves a temporary copy of the cursor, so the rules
that apply to free tables also apply, and any features requiring database
support are lost or changed in an unpredictable manner. Therefore, you
should generally avoid using ALTER TABLE with Visual FoxPro cursors unless
you have tested and understood the outcome.

У тебя в таблице были какие-то возможности, которые недопустимы для фоксовых
FREE таблиц - имена полей >10 символов, Default Value и т.п. Если сделать
курсор (неважно каким способом кстати говоря) в котором ТОЖЕ будут
использованы эти возможности, то ALTER TABLE потом к нему применять будет
нельзя.
Если уж ты делаешь курсор из массива описания, то почему-бы в самом массиве
и не добавить новые строки с описанием новых полей? Ну или зачистить в
массиве ВСЁ что не укладывается в ограничения FREE таблиц - тогда полученный
курсор можно будет изменять через ALTER TABLE.

Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / ADD Column в курсор - ошибка / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]