| 
| 
 | Вопрос # 5 406/ вопрос открыт / | 
 |  Здравствуйте!Как программно прописать так что бы при нажатии кнопки из DBLookupComboBox удалялось значение и сохранялось пустое значение?
 прописал на кнопку DBLookupComboBox3.KeyValue:=Null; но значение только удаляется, но потом заново появляется, как сохранять пустое значение?
 DBLookupComboBox соеденён с БД, может проблема в том что оно удаляется из DBLookupComboBox, но остаётся в БД?
 
|  |   Вопрос задал: strannik23 (статус: Посетитель)Вопрос отправлен: 13 июня 2011, 21:44
 Состояние вопроса: открыт, ответов: 2.
 |  Ответ #1. Отвечает эксперт: corban Здравствуйте, strannik23!DBLookupComboBox это такая фигня, которая данные из одного набора данных сопоставляет с данными из другого набора, удалять чтолибо из него напрямую нереально. Для этого надо удалять записи из обоих наборов данных, иначе в основной таблице появятся поля не сопоставимые с дочерней, судя по всему ты просто хочешь заменить данные пустой строкой, тогда только так:
 
 DBLookupComboBox3.ListSource.Enabled:=false;
 DBLookupComboBox3.ListSource.DataSet.Edit;
 DBLookupComboBox3.ListSource.DataSet.FieldByName(DBLookupComboBox3.ListField).AsString:='';
 DBLookupComboBox3.ListSource.DataSet.Post;
 DBLookupComboBox3.ListSource.Enabled:=true;
 
|  | Ответ отправил: corban (статус: 2-ой класс)Время отправки: 15 июня 2011, 14:23
 
 |  Ответ #2. Отвечает эксперт: ArtGal Здравствуйте, strannik23!Вопрос поставлен не корректно.
 Какая БД, структура таблиц?
 Если нужно удалить запись из некой таблицы, то причем здесь DBLookupComboBox?
 
 Пример:
 delete from ChildTable ChT -- дочерняя таблица
 where ChT.[поле] = :[параметр]
 -- скорее всего поле используемое для связи
 -- дочерней и родительской таблиц.
 -- Параметр - значение кей валуе DBLookupComboBox'a
 
|  | Ответ отправил: ArtGal (статус: 1-ый класс)Время отправки: 21 июня 2011, 17:40
 
 |  
 Мини-форум вопросаВсего сообщений: 14; последнее сообщение — 21 июня 2011, 17:41; участников в обсуждении: 4. 
|   | Gooddy (статус: 3-ий класс), 13 июня 2011, 22:06 [#1]:Проблема как раз в том, что значение остаётся в БД. Кстати KeyValue какого типа?
 Чисти код! Чисти код! Чисти код! |  
|   | strannik23 (статус: Посетитель), 13 июня 2011, 22:09 [#2]:подскажи как удалить значение из БД |  
|   | strannik23 (статус: Посетитель), 13 июня 2011, 22:34 [#3]:кто нибудь может помочь? |  
|   | Gooddy (статус: 3-ий класс), 13 июня 2011, 22:53 [#4]:Ты специально игнорируешь мои вторые вопросы? KeyValue какого типа?
 Чисти код! Чисти код! Чисти код! |  
|   | strannik23 (статус: Посетитель), 13 июня 2011, 22:53 [#5]:текстовый |  
|   | Gooddy (статус: 3-ий класс), 13 июня 2011, 22:56 [#6]:Тогда почему null. Не = ''? Сейчас разберусь как удалять из базы.
 Чисти код! Чисти код! Чисти код! |  
|   | Gooddy (статус: 3-ий класс), 13 июня 2011, 22:58 [#7]:Попробуй менять ListField и KeyField Чисти код! Чисти код! Чисти код! |  
|   | strannik23 (статус: Посетитель), 13 июня 2011, 23:02 [#8]:так нельзя |  
|   | Gooddy (статус: 3-ий класс), 13 июня 2011, 23:03 [#9]:Тогда извиняй, я вообще с базами не работаю. Чисти код! Чисти код! Чисти код! |  
|   | Gooddy (статус: 3-ий класс), 13 июня 2011, 23:08 [#10]:И можешь не ждать, до завтра врятли кто ответит. Чисти код! Чисти код! Чисти код! |  13 июня 2011, 23:46: Вопрос перемещён из тематического раздела Delphi » Общие вопросы по программированию в раздел Delphi » Программирование баз данных (БД) модератором Ерёмин А.А. 
|   | Мережников Андрей (статус: Абитуриент), 14 июня 2011, 06:06 [#11]: Цитата (strannik23): подскажи как удалить значение из БД  какая БД? какая структура таблиц? какие компоненты используются для доступа к БД? в какой таблице должно удаляться значение?
 |  
|   | strannik23 (статус: Посетитель), 14 июня 2011, 07:33 [#12]:данные храняться в компоненте TADOTable, храниться текстовое значение, DBLookupComboBox береёт данные из одной таблицы и передают их в другую |  
|   | Мережников Андрей (статус: Абитуриент), 14 июня 2011, 17:02 [#13]:данные не могут храниться в TADOTable - это компонент для доступа к данным, а не для их хранения. В какой таблице надо удалять значение - в первой (из которой берется значение) или из второй (куда передается) ? Какая структура таблиц? Какая БД? |  
|   | ArtGal (статус: 1-ый класс), 21 июня 2011, 17:41 [#14]:Вопрос поставлен не корректно. Какая БД, структура таблиц?
 Если нужно удалить запись из некой таблицы, то причем здесь DBLookupComboBox?
 
 Пример:
 delete from ChildTable ChT -- дочерняя таблица
 where ChT.[поле] = :[параметр]
 -- скорее всего поле используемое для связи
 -- дочерней и родительской таблиц.
 -- Параметр - значение кей валуе DBLookupComboBox'a
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |