Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере. / 5 сообщений из 5, страница 1 из 1
12.12.2002, 17:07
    #32078884
sandy2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
hConn=SQLCONNECT('Clients')


nSet=SQLSETPROP(hConn,  "Asynchronous" , .F. )
nSet=SQLSETPROP(hConn,  "Transactions" ,  1  )

 =SQLEXEC(hConn, "SELECT  id,kod_kl,email FROM clients" , "clients" )

lSuccess=CURSORSETPROP( "SendUpdates" , .T.)
lSuccess=CURSORSETPROP( "Tables" ,  "clients" )
lSuccess=CURSORSETPROP( "UpdateNameList" , "email" )
lSuccess=CURSORSETPROP( "WhereType" , 4 )
lSuccess=CURSORSETPROP( "KeyFieldList" , "ID" )
BROWSE

USE

=SQLDISCONN (hConn)

При просмотре корректируется поле email. Но при при закрытии базы должно произойти скидывание измененных данных на сервер.
Но этого не происходит. Выдается сообщение No update tables is specified. Use the Table property of cursor.
В чем проблема? Подскажите.

PS. При использовании Connection и Remote view, Browse изменения отрабатывают. Задача состоит в том, что-бы перейти на сквозные запросы SQL.
...
Рейтинг: 0 / 0
12.12.2002, 21:40
    #32078925
vklepko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере.
Попробуй:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
hConn=SQLCONNECT('Clients')

nSet=SQLSETPROP(hConn,  "Asynchronous" , .F. )
nSet=SQLSETPROP(hConn,  "Transactions" ,  1  )

 =SQLEXEC(hConn, "SELECT  id,kod_kl,email FROM clients" , "clients" )

lSuccess=CURSORSETPROP( "SendUpdates" , .T.)
lSuccess=CURSORSETPROP( "Tables" ,  "clients" )
lSuccess=CURSORSETPROP( "UpdateNameList" , "id clients.id, email clients.email" )
lSuccess=CURSORSETPROP( "WhereType" , 4 )
lSuccess=CURSORSETPROP( "KeyFieldList" , "ID" )
lSuccess=CURSORSETPROP( "UpdatableFieldList" , "email" )
BROWSE
USE
=SQLDISCONN (hConn)


-----------------
Я прошу прощения, а чем провинились Remote View?
...
Рейтинг: 0 / 0
12.12.2002, 22:39
    #32078932
vklepko
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере.
Чуть не забыл: самое нехорошее, что WhereType = 4 прошел без ошибки. Как я понимаю, поля time_stamp нет и WhereType перешел в 1 - DB_KEY неявно. Наверное, при использовании WhereType = 4 нужно добавлять time_stamp явно :

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
hConn=SQLCONNECT('Clients')

nSet=SQLSETPROP(hConn,  "Asynchronous" , .F. )
nSet=SQLSETPROP(hConn,  "Transactions" ,  1  )

 =SQLEXEC(hConn, "SELECT  id,kod_kl,email,tm_stamp FROM clients" , "clients" )

lSuccess=CURSORSETPROP( "SendUpdates" , .T.)
lSuccess=CURSORSETPROP( "Tables" ,  "clients" )
lSuccess=CURSORSETPROP( "UpdateNameList" ,;
	 "id clients.id, email clients.email, tm_stamp clients.tm_stamp" )
lSuccess=CURSORSETPROP( "WhereType" , 4 )
lSuccess=CURSORSETPROP( "KeyFieldList" , "ID,tm_stamp" )
lSuccess=CURSORSETPROP( "UpdatableFieldList" , "email" )
BROWSE
USE

=SQLDISCONN (hConn)


Правда optimistic row buffering не совсем подходит для этого примера
...
Рейтинг: 0 / 0
13.12.2002, 10:45
    #32078972
sandy2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере.
Здравствуйте.
Спасибо, vklepko.

Действительно, с WhereType=1 и изменениями в UpdateNameList, UpdatableFieldList - все работает.

Блокировку задаю
Код: plaintext
lSuccess=CURSORSETPROP( "Buffering" ,  3  )

.
Переход на SQL pass-through (SPT), вызван переписанием кода работы с таблицами в классы и оптимизации работы по времени.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
03.09.2007, 03:30
    #34770564
Фрилансер
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере.
Владимир, еще одно спасибо от меня!)))
...
Рейтинг: 0 / 0
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Вопрос по VISUAL FOXPRO. Почему не происходит UPDATE таблицы на SQL сервере. / 5 сообщений из 5, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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