Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Вниз

LookUp-поля в InterBase   Найти похожие ветки 

 
Elvira   (2002-10-15 14:02) [0]

Помогите пожалуйста!
Пишу программу в режиме клиент-сервер с использованием СУБД InterBase. Использую LookUp-поля для отображения данных из справочника на форме ввода. Очень сильно тормозят работу программы, даже просто сохранение записи происходит медленно.
Как обойти эту ситуацию,если буду просто делать запрос из двух таблиц, при выборе из справочника информация не будет отображаться на форме ввода?

Заранее всем благодарна!!!


 
Johnmen   (2002-10-15 14:13) [1]

Копоненты доступа ?


 
Val   (2002-10-15 14:29) [2]

Look-up поля при работе с промышленными субд - не очень хороший тон, по-моему. Советую использовать view в таких случаях и вызывать форму справочника для выбора значения, если справочники слишком объемны.


 
Elvira   (2002-10-15 14:29) [3]

Для доступа использую IBExpress.


 
Johnmen   (2002-10-15 14:50) [4]

Вообще-то тормозов, сколько-нибудь заметных, не должно быть...
Даже если справочники объемны...
Подозреваю, что используются несоответствующие компоненты для конктретных задач. Или используются некорректно.


 
Elvira   (2002-10-15 15:00) [5]

Val, а поподробнее можно.
Если я буду использовать View т.е. за ранее сформированный запрос из двух таблиц (из таблицы в которую ввожу данные и из справочника) то как я смогу изменять таблицу т.е добавлять, редактировать и т.д. На сколько я знаю, чтобы просмотр был обновляемым он должен состоять из записей одной таблицы.

Чтобы было понятнее: у меня есть таблица в которой хранится помимо другой информации код клиента и есть справочник клиентов
При изменении таблицы клиента выбирают из справочника код записывается в таблицу, а наименование и др. информация отображаются на форме как LookUp-поля. В общем обычная история которая в Paradox таблицах не вызывала никаких проблем.
Что делать? Помогите!!!


 
Elvira   (2002-10-15 15:09) [6]

Johnmen,я использую один компонент TIBDatabase для связи с БД,
один компонент TIBTransaction, много наборов данных TIBQuery и TIBUpdateSQL После сохранения делаю Transaction.CommitReading, знаю что в этом случае остоется много ненужной информации т.к. наборы данных не обновляются, но это уже другая история...
В общем я тестировалаю, убираю LookUp-поля сохраняет быстро, добавляю парочку уже медленно.
Если я делаю что-то не так подскажи пожалуйста?


 
Val   (2002-10-15 15:11) [7]

я говорил о view для отображения(как вариант, поскольку можно использовать соотв. запрос в IBDataSet), раз уж вы все равно используете отдельную форму для редактирования. Или нет? Опишите подробнее, чем пользуетесь, как происходит работа с НД.


 
Val   (2002-10-15 15:13) [8]

>Elvira (15.10.02 15:09)
сорри,не прочитал ваш последний пост
много наборов данных TIBQuery и TIBUpdateSQL
это что означает? давайте о конкретном случае.


 
Johnmen   (2002-10-15 15:28) [9]

С НД лучше работать через IBDataSet !
И тогда не нужны всякие TIBUpdateSQL...
См. свойства SelectSQL и т.д.....


 
Elvira   (2002-10-15 20:15) [10]

Johmen,а использование IBDataSet решит мою проблемму со скоростью?
И еще если можно подскажи как подтверждаешь транзакцию после сохранения записи: Commit- медленно, переоткрывает все наборы данных, CommitReading-не обновляет таблицу? Хотя все сразу наверно не бывает. :))



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.11.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.008 c
6-11371
_sMile
2002-09-05 18:10
2002.11.04
InternetCheckConnection


1-11314
irmantukas
2002-10-23 20:29
2002.11.04
Как закрыть прогу?


3-11101
Андрусь
2002-10-15 22:17
2002.11.04
---|Ветка была без названия|---


1-11229
deffer
2002-10-24 18:10
2002.11.04
delphi отказывает в приведении типа. Почему?


14-11475
Ketmar
2002-10-15 18:28
2002.11.04
господа, напомните, где живет DMFC?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский