| 
| 
 | Вопрос # 5 155/ вопрос решён / | 
 |  Здравствуйте, эксперты! Помогите решить одну проблему. у меня на форме: Combobox, 2 Listbox-a, edit. к программе подсоеденениы 2 базы данных (BD1, BD2). В Edit вводится название новой таблицы которая создается в BD2, таблица состоит из 2 столбов (FIO, Adres). Combobox отображает список таблиц первой базы BD1, все таблицы состояи из 1 столбца (FIO), при выборе опр таблицы в LIstbox1  отображается её содержимое. Сделал кнопку для переноса необходимых строк в Listbox2. Так вот как сделать что бы содержимое LIstbox2 сохранялось в новой таблицы BD2 столбце FIO ????? ПОМОГИТЕ ПЛИЗ!!!!!!!!! 
|  |   Вопрос задал: Анучин (статус: Посетитель)Вопрос отправлен: 5 апреля 2011, 13:36
 Состояние вопроса: решён, ответов: 1.
 |  Ответ #1. Отвечает эксперт: Чернышев Здравствуйте, Анучин!если я правильно понял, то на момент переноса строк из Listbox1 в Listbox2, таблица в второй базе уже создана
 я бы сделал вот так:
 1) пусть Listbox2 отображает данные новой таблицы точно таким же способом, как Listbox1 отображает данные первой таблицы
 (создал для заполнения отдельную процедуру под названием filListBox2 без параметров)
 2) а на событие нажатия кнопки написал бы вот такую процедуру (см.код ниже)
 
 
 Два примечания:
 - не забывай перед заполнение Listbox2 отчистить его
 - ADOCommand должен быть подключен к базе где у тебя находиться новая таблица
 Приложение:Переключить в обычный режим procedure TForm1.ButtonClick(Sender: TObject);begin  ADOCommand.CommandText:='insert into '+Edit.text+' (FIO) values
('+ListBox1.Items[ListBox1.ItemIndex]+')';  ADOCommand.Execute;   filListBox2;end;
|  | Ответ отправил: Чернышев (статус: 1-ый класс)Время отправки: 5 апреля 2011, 19:17
 
 |  
 Мини-форум вопросаВсего сообщений: 11; последнее сообщение — 7 апреля 2011, 16:14; участников в обсуждении: 4. 
|   | Анучин (статус: Посетитель), 5 апреля 2011, 19:05 [#1]:большая загвостка состоит в том что, во второй базе таблицы создаются программно и их количество непостоянно, поэтому ADOTable непременить. Для отображения в Combobox, Listbox я использовал ADoConnectio, ADOQuery, а для добовления таблиц ADOCommand |  
|   | Мережников Андрей (статус: Абитуриент), 5 апреля 2011, 19:59 [#2]: Цитата (Анучин): поэтому ADOTable непременить а что мешает применить для добавления записи в таблицу ADOCommand?
 
 Ps:
 Цитата (Анучин): загвостка это на каком языке? Правильно - загвоЗДка (производное от слова гвоЗДь).
 |  
|   | Анучин (статус: Посетитель), 5 апреля 2011, 22:53 [#3]:Чернышев: чёт не получается выдает ошибку: List index out of bounds (-1)- чего делать?(((( |  
|   | Вадим К (статус: Академик), 5 апреля 2011, 22:55 [#4]:А почему это AdoTable не применим? имя таблицы указывается в виде строки. Никаких абсолютно проблем. 
 Хотя AdoCommand будет уместнее.
 Галочка "подтверждения прочтения" - вселенское зло. |  
|   | Чернышев (статус: 1-ый класс), 5 апреля 2011, 23:18 [#5]:ты не выбрал строку, которую надо перенести 
 было бы идеально тогда еще сделать проверку в самом начале события нажатия кнопки
 
 проверять значение ListBox1.ItemIndex
 
 
 if ListBox1.ItemIndex=-1 then
begin
  ShowMessage('Не выбрано ни одной строки');
  exit;
end; |  
|   | Анучин (статус: Посетитель), 6 апреля 2011, 18:14 [#6]:Чернышев: тепрь после выбора строки выдает ошибку: Параметр "текст выбранной строки" не имеет значения по умолчанию. |  
|   | Чернышев (статус: 1-ый класс), 6 апреля 2011, 20:27 [#7]:попробуй вот так 
 ADOCommand.CommandText:='insert into '+Edit.text+' (FIO) values
('''+ListBox1.Items[ListBox1.ItemIndex]+''')'; |  
|   | Анучин (статус: Посетитель), 6 апреля 2011, 21:02 [#8]:))))) блин теперь ошибок нету, но в базу все равно ни чего не добавляется |  
|   | Мережников Андрей (статус: Абитуриент), 6 апреля 2011, 21:22 [#9]: Цитата (Анучин):  блин теперь ошибок нету, но в базу все равно ни чего не добавляется  "Ищите и обрящете". Если бы не было ошибок, то все работало бы как надо.
 |  
|   | Анучин (статус: Посетитель), 6 апреля 2011, 21:24 [#10]:)))ну я имел в виду, что программа запускается и Delphi не выдает ошибку при запуске, а не то что прога работает так как надо! |  7 апреля 2011, 16:15: Статус вопроса изменён на решённый (изменил автор вопроса — Анучин) Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |