主页
Top.Mail.Ru Yandeks.Metrika
论坛:“基地”;
当前存档:2002.07.25;
下载:[xml.tar.bz2];

向下

更改目录中的数据,显示在表中。 找到类似的分支


kengura   (2002-07-04 20:02) [0]

Вроде должен был уже вопрос обсуждаться, но не нашел. Есть справочник, есть связанные с ним таблицы (работаю с ними через TIBQuery). После измененения данных в справочнике приходиться переоткрывать эти запросы - Close, Open. Есть ли возможность перечитать только нужные записи в связанных таблицах?



Viewer   (2002-07-04 20:24) [1]

И как Вы себе это представляете ?
Вы изменили в справочнике запись поле с "Пупкин" на "Ступкин".
В связанной таблице есть записи 2,34,567,123456 ссылающиеся на
id c этим "Пупкиным-Ступкиным".
Что же может определить необходимость изменения отображения именно этих записей кроме как переоткрытия запроса ?



kengura   (2002-07-04 20:43) [2]

查看器。
Никак себе не представляю, поэтому и спрашиваю. :)
Тем не менее переоткрывание 123456 с плюсом записей после изменений "Пупкин-Ступкин" кажется излишним, тем более если связанных таблиц несколько. Вот работает же как-то TIBUpdateSql через свойство RefreshSQL для отображения измененной записи без переоткрытия всего набора данных.



kaif   (2002-07-05 03:27) [3]

На самом деле TIBUpdateSql тоже переоткрывает запрос, но только для текущей строки набора. Видимо, Вы хотите избавиться не столько от переоткрытия, сколько от Fetch всех записей.
Если Вас устраивает механизм Refresh, применяемый TIBUpdateSql, то можно его воспроизвести. Можно вместо TIBQuery поставить TIBDataSet, прописать текст RefreshSQL. Потом просканировать имеющийся набор и сделать Refresh тех строк, где имеется данное значение ссылки на справочник. Чтобы не было мелькания в сетках можно заключить этот цикл в
IBDataSet.DisableControls
цикл сканирования набора с Refresh нужных строк
IBDataSet.EnableControls
Не знаю, что из этого выйдет, но можно попробовать...
Все зависит от соотношения количества и времени Refresh к общему времени просто переоткрытия запроса. Если конкретное значение справочника встречается редко, то можно получить выигрыш по скорости, если часто - то скорее значительный проигрыш.



Johnmen   (2002-07-05 09:31) [4]

По поводу kaif © (05.07.02 03:27) :
Короче - используй TIBDataSet и метод RefreshSQL



Страницы: 1 整个分支

论坛:“基地”;
当前存档:2002.07.25;
下载:[xml.tar.bz2];

楼上









内存:0.57 MB
时间:0.029 c
3-81147
alexvan
2002-07-03 16:08
2002.07.25
DBLookupComboBox不希望看到Table中的数据


3-81195
Prog_mail
2002-07-02 15:51
2002.07.25


1-81363
invega
2002-07-13 20:03
2002.07.25
单击时如何在备忘录中插入文本...


7-81490
Glonia zbanov
2002-05-07 13:00
2002.07.25
打印机


8-81389
Vvedensk
2002-03-15 14:23
2002.07.25
如何像Photoshop一样在图像质量下降的情况下放大图像





南非荷兰语 阿尔巴尼亚人 阿拉伯语 亚美尼亚 阿塞拜疆 巴斯克 白俄罗斯 保加利亚语 加泰罗尼亚 简体中文 中国(繁体) 克罗地亚 捷克 丹麦语 荷兰人 英语 爱沙尼亚语 菲律宾人 芬兰 法文
加利亚西语 格鲁吉亚语 德语 希腊语 海地克里奥尔语 希伯来语 印地语 匈牙利 北日耳曼语 印度尼西亚人 爱尔兰语 意大利语 日本性玩偶 韩语 拉脱维亚 立陶宛 马其顿 马来语 马耳他语 挪威语
波斯语 波兰语 葡萄牙语 罗马尼亚 俄语 塞尔维亚 斯洛伐克 斯洛文尼亚 西班牙语 斯瓦希里 瑞典语 泰国人 土耳其 乌克兰 乌尔都语 越南人 威尔士语 意第绪语 孟加拉 波斯尼亚
宿务 世界语 古吉拉特语 豪萨语 苗族 伊博 爪哇 卡纳达语 高棉 老挝 拉丁语 毛利 马拉 蒙古人 尼泊尔 旁遮普 索马里 泰米尔人 泰卢固语 约鲁巴语
祖鲁
英文 Французский Немецкий Итальянский Португальский 俄文 Испанский