IBX, FIBPlus, UIB, ADO, .Net и прочее-прочее-прочее, в общем все, что относится к созданию приложений, работающих с InterBase, Firebird и Yaffil - клиент-серверных, трехзвенных, консольных и т.п.
Модератор: kdv
-
BlackEric
- Сообщения: 31
- Зарегистрирован: 15 фев 2006, 08:43
Сообщение
BlackEric » 16 фев 2006, 17:40
Delphi 7, FireBird,IBX.
Нужно содержимое поля (из всех записей) БД поместить в string, TStrings или что-нибуль подобное.
Пытаюсь делать так
ComboBox1.Items.Values[' ']:=string(IBDataSet2.Fields.Fields[1].CurValue);
Выдает ошибку, что не может конвертировать null в string.
Как это сделать????
P.S. DBLookupComboBox не предлагать.
Последний раз редактировалось
BlackEric 16 фев 2006, 17:41, всего редактировалось 1 раз.
-
kdv
- Forum Admin
- Сообщения: 6595
- Зарегистрирован: 25 окт 2004, 18:07
Сообщение
kdv » 16 фев 2006, 17:41
проверять на null
-
Dimitry Sibiryakov
- Заслуженный разработчик
- Сообщения: 1436
- Зарегистрирован: 15 сен 2005, 09:05
Сообщение
Dimitry Sibiryakov » 17 фев 2006, 08:03
BlackEric писал(а):Пытаюсь делать так
ComboBox1.Items.Values[' ']:=string(IBDataSet2.Fields.Fields[1].CurValue);
Ужас какой! RTFM AsString немедленно!
Ну заодно и про TStrings.Add().
-
BlackEric
- Сообщения: 31
- Зарегистрирован: 15 фев 2006, 08:43
Сообщение
BlackEric » 17 фев 2006, 09:28
Если так, то я получаю только одну запись!
ComboBox1.Items.Add(IBDataSet2.FieldValues['surname']);
А если так, то 1 запись в таблице подгружается несколько раз
for i := 0 to IBDataSet2.RecordCount - 1 do
ComboBox1.Items.Add(IBDataSet2.FieldValues['surname']);
-
BlackEric
- Сообщения: 31
- Зарегистрирован: 15 фев 2006, 08:43
Сообщение
BlackEric » 17 фев 2006, 10:11
Спасибо всем за помощь!!!
Работает оно таким образом
IBDataSet2.FetchAll;
for i := 0 to IBDataSet2.RecordCount - 1 do
begin
ComboBox1.Items.Add(IBDataSet2.FieldValues['surname']);
IBDataSet2.Next;
end;
Спасибо!!!!!