Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
Внизможно ли обновить одну строку запроса? Найти похожие ветки
← →
Bless (2003-11-25 16:31) [0]сабж.
← →
Reindeer Moss Eater (2003-11-25 16:33) [1]А вот в Оракле, который отдыхает, - можно.
:)
← →
VAleksey (2003-11-25 16:35) [2]Как вариант, можно извратится повторным запросом строки и модифицировать ее на клиенте.
← →
Stas (2003-11-25 16:37) [3]ADODataSet1.Properties["Update Resync"].Value:= adResyncAll;
см. http://www.delphikingdom.com/helloworld/ado02.htm
← →
Bless (2003-11-25 17:36) [4]Stas [3]> :) Эту широко разрекламированную статью я уже читал и даже использую с большой для себя пользой. Но это не тот случай.
Update resync влияет на то, какие поля будут обновлены в результате обновления строки, но как он может помочь инициировать обновление одной строки?
>А вот в Оракле, который отдыхает, - можно.
Радость за оракл и всех, кто на нем пишет меня просто распирает.
И я посыпаю голову пеплом за то, что выбор мой (точнее, не совсем мой. А если абсолютно точно - вообще не мой) пал на MSSQL. Жаль только, это не помогает решить проблемку.
← →
ZrenBy (2003-11-25 17:58) [5]>>но как он может помочь инициировать обновление одной строки?
uses ...,ADOInt;
ADODataset1.UpdateCursorPos;
ADODataset1.Recordset.Resync(adAffectCurrent,adResyncAllValues);
ADODataset1.Resync([rmExact]);
← →
yurchello (2003-11-25 21:01) [6]ХЕЛП! спасайте. База PostgreSQL,
Проблема - через ADO добавляю строчку в таблицу - ни в какую не хочет обновлять автоинкримент поле!!!.
Properties["Update Resync"].Value:= adResyncAll;
(см. http://www.delphikingdom.com/helloworld/ado02.htm)
никаких результатов не даёт. непомогает и
ADODataset1.UpdateCursorPos;
ADODataset1.Recordset.Resync(adAffectCurrent,adResyncAllValues);
ADODataset1.Resync([rmExact]);
При повторном редактировании добавленной строки выдаёт
Row cannot be located for updating ..... ..
Что делатЬ? базу менять?
← →
Bless (2003-11-26 09:08) [7]TO ZrenBy> Спасибо. Попробую
← →
Bless (2003-11-26 10:03) [8]TO ZrenBy[5]> А не мог бы ты объяснить, что делают вторая и третья строка? А именно:
1) зачем нужны resync и во второй, и в третьей строках?
2) зачем нужен rmExact? Ведь мы строчкой UpdateCursorPos гарантировали, что курсор позиционирован на текущую запись.
И вообще, в каких случаях может быть, что курсор не совпадает с текущей записью?
← →
ZrenBy (2003-11-26 10:35) [9]>>Bless (26.11.03 10:03) [8]
1) Resync`и бывают разные - ado-шные и TADO-шные.
Первый делает нормальный ресинк рекордсета,
а второй нужен, чтобы этот измененный рекордсет закачать
в буфер TCustomDataSet-а или как там его.
2)Это не ко мне. Когда я впервые задал себе подобный вопрос,
то ответ пришел мгновенно - я уже давно не использую
TADO-компоненты, а работаю напрямую с интерфейсами ADO.
3) >>курсор не совпадает с текущей записью?
В TADO-компонентах всегда
← →
Bless (2003-11-26 11:42) [10]Четко и ясно. Спасибо.
А где можно прочитать о том, что реализуют те или иные функции, предоставленные интерфейсом ADO?
>я уже давно не использую
>TADO-компоненты, а работаю напрямую с интерфейсами ADO
Это как? А данные с помощью чего отображаешь? Самописными компонентами?
>В TADO-компонентах всегда
А в чём не всегда, объясни, если не трудно. Я всегда думал, что текущая запись - это та, на которую указывает курсор. Поэтому я не понимаю, как может курсор указывать не на текущую запись. Наверное, я думал неправильно. А как правильно? Что такое "текущая запись" и что такое "курсор"?
← →
ZrenBy (2003-11-26 12:08) [11]>>А где можно прочитать о том, что реализуют те или иные
>>функции, предоставленные интерфейсом ADO?
Мельком видел книгу "ADO в Delphi", хотел купить,
а на следующий день уже не было. А так MSDN
>>А данные с помощью чего отображаешь? Самописными компонентами?
Ага
>>Что такое "текущая запись" и что такое "курсор"?
Ну, тут надо договориться о терминах. Я просто хотел
сказать, что текущая запись в ADODataSet в его буфере не
совпадает с AbsolutePosition ADO-шного рекордсета,
поэтому и нужен ADODataset.UpdateCursorPos
← →
Bless (2003-11-26 12:47) [12]Понятно. Спасибо.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.12.19;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.009 c