Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.10.2009, 05:05   #1
lutdan
Пользователь
 
Регистрация: 08.01.2008
Сообщений: 47
По умолчанию БД - Несколько вопросов

Добрый День! Помогите новичку
Использую базу Access и при реализации продукта возникли такие вопросы:
1. Как лучше сделать сортировку в ADOTable через DBLookupComboBox (нужно для поиска) ?
2. Как реализовать через кнопку, открытие базы, если я использую ADOTable (3 штуки) и DataSource (3 Штуки). например, у меня есть одна база Access с одними данными(но одинаковыми таблицами),а мне надо другие данные с другой базы данных Access.
3. Как перехватить ошибку DBNavigator'а об удалении записи...и отобразить свою?
lutdan вне форума Ответить с цитированием
Старый 10.10.2009, 08:39   #2
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

2. есть connect, отключитесь от одной и подключитесь к другой
3. при помощи try
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Старый 11.10.2009, 19:58   #3
lutdan
Пользователь
 
Регистрация: 08.01.2008
Сообщений: 47
По умолчанию

а подробнее можно?))
lutdan вне форума Ответить с цитированием
Старый 11.10.2009, 20:22   #4
Sparky
Участник клуба
 
Аватар для Sparky
 
Регистрация: 15.05.2009
Сообщений: 1,222
По умолчанию

1. лучше использовать combobox и заполнять его программно при помощи запроса, сортировать по какому полю будете?
2. при нажатии кнопки, вы закрываете все таблицы:
ADOTable1.close;
ADOConnect1.connection:=false;
ADOConnect2.connection:=true;
ADOTable1.open;

3. Может стоит сделать отдельную кнопку на удаление:
Примерно так, только код ошибки свой подставь:
try
if MessageBox(Self.Handle,'Вы действительно хотите удалить информацию об издательстве?','АРМ Библиотекаря',MB_YESNO or MB_ICONQUESTION)=IDYES then
begin
DataModule2.ADOQuery7.close;
DataModule2.ADOQuery7.SQL.Text:='de lete from t_house where id_house=:id_house';
DataModule2.ADOQuery7.Parameters.Pa ramByName('id_house').value:=DataMo dule2.ADOQuery15.FieldByName('id_ho use').Value;
DataModule2.ADOQuery7.ExecSQL;
DataModule2.ADOQuery15.Close;
DataModule2.ADOQuery15.Open;
DeleteComboBox;
InsertComboBox;
DBGrid1.DataSource.DataSet.First;
end;
Except on e:EOleException do
begin
if e.ErrorCode=-2147467259 then MessageBox(self.Handle,'Удаление невозможно, информация о данном издательстве используется','АРМ Библиотекаря',MB_OK or MB_ICONERROR);
end;
end;
end
else MessageBox(Self.Handle,'В данном справочнике нет данных','АРМ Библиотекаря',MB_OK or MB_ICONEXCLAMATION);
end;
Единственное, что ограничивает полет мысли программиста-компилятор
Sparky вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Несколько вопросов. Miron86 Компоненты Delphi 3 09.09.2009 18:25
несколько вопросов fitc Общие вопросы Delphi 28 14.07.2009 21:20
Несколько вопросов pix_l Общие вопросы Delphi 1 29.03.2009 22:26
Несколько Вопросов Дорст Общие вопросы Delphi 3 12.11.2007 09:18