Форум программистов, компьютерный форум, киберфорум
C++ Builder: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/13: Рейтинг темы: голосов - 13, средняя оценка - 4.77
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118

Можно ли удалить повторы в DBComboBox?

01.04.2010, 16:41. Показов 2595. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго времени суток! У меня для DBComboBox написан код для отображения содержимого столбца базы. В этом столбце одна и та же фамилия может встречаться много раз. Можно ли убрать повторы из DBComboBox?
C++
1
2
3
4
5
6
void __fastcall TForm1::FormCreate(TObject *Sender)
{
   Table1->Open();
   DBComboBox4->Clear();
   for (Table1->First(); !Table1->Eof; Table1->Next())
   DBComboBox4->Items->Add(Table1->FieldByName("Name1")->AsString);
Спасибо!
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
01.04.2010, 16:41
Ответы с готовыми решениями:

Borland C++ Builder 6 DBComboBox Связь с БД и Другими DBComboBox
есть такая форма) мне нужно что б при выборе данные в одном DBComboBox в других в зависимости от выбора в первом выводились данные)...

Удалить повторы слов
Нужно удалить повторы слов из текста. Код работает но дого. Я сначала текст копирую в QString. Потом очищаю от лишних символов. ...

Удалить повторы в списке l3
Добрый вечер! Помогите пожалуйста с программой, в общем необходимо удалить повторяющиеся элементы в односвязном списке, я написала такой...

11
 Аватар для Sasha
4956 / 2420 / 531
Регистрация: 05.06.2008
Сообщений: 7,518
Записей в блоге: 3
01.04.2010, 16:59
Можно оператор DISTINCT
1
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118
02.04.2010, 08:38  [ТС]
Sasha, Вы имеете в виду через запрос SQL? Нет, я хотел бы работая с DBComboBox, не вторгаясь в таблицу. Вот, как я открыл полностью весь столбец, так же, кодом, удалить повторы. А для SQL надо добавить Query... Хотелось бы попроще. Спасибо!
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.04.2010, 08:47
Делаешь в приладе свой query, там ставишь goop by (кажется), его берешь источником. Таблица останется как была. А кодом - это как раз вмешательство в таблицу.
1
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118
02.04.2010, 12:17  [ТС]
То есть, мне надо перенастроить DBComboBox на DataSourse связанный с Query и в запросе отсеять повторы? Извините, а с Table никак нельзя? Просто очень много всего придется перенастраивать. Спасибо!
0
 Аватар для taras atavin
4226 / 1796 / 211
Регистрация: 24.11.2009
Сообщений: 27,562
02.04.2010, 12:41
Тогда поищи свойство. То есть, чтоб компонент группировал. Всё остальное - вмешательство в саму таблицу.

Добавлено через 1 минуту
Цитата Сообщение от NewbieС Посмотреть сообщение
еренастроить DBComboBox на DataSourse связанный с Query
Само данное остаётся где было, перенастроить я предлагал только источник строк для подстановки.
0
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118
03.04.2010, 15:09  [ТС]
taras atavin,
Цитата Сообщение от taras atavin Посмотреть сообщение
Само данное остаётся где было, перенастроить я предлагал только источник строк для подстановки.
Об этом можно чуть подробнее, а то я никак не соображу, как выбирая строку в DBComboBox, которая принадлежит Table1, можно отфильтровать Query? Или Table1 заменить на Query? Спасибо!
0
 Аватар для [XandeR]
31 / 31 / 3
Регистрация: 18.03.2009
Сообщений: 381
Записей в блоге: 2
04.04.2010, 12:15
если ты хочешь "выбирая строку в DBComboBox, которая принадлежит Table1 отфильтровать Query" то тебе нужно использовать не DBComboBox а DBLookupComboBox.
1. Ставишь на форму query, table и 2 DataSource
2. В query прописываешь запрос используя distinct/ Пример:
SQL
1
2
SELECT DISTINCT ФИО
FROM [основные данные];
Выведет все неповторяющиеся фамилии
3. Устанавливаешь имя таблицы в которой при выборе из DBLookupComboBox автоматически будут фильтроватся данные
3. Подключаешь DataSource"ы к query и table
4. в table в поле MasterSource выбирешь DataSource с query, и устанавливаешь MasterFields на "ФИО" (это в моем случае)
5. Подключаешь DBLookupComboBox/ ListSource выбираешь DS с query, ListFields пишешь "ФИО", и KeyField можно ФИО потому как выборку мы осуществили только по ФИО но можно было и индексное поле какое нить выбрать в запросе и тогда его прописать в KeyField.
Вот в общем то и все, это самый простейший способ, ни строчки программного кода
2
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118
04.04.2010, 21:21  [ТС]
[XandeR], огромное спасибо, все понял!
0
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118
19.06.2010, 23:30  [ТС]
[XandeR], как не бился, не смог заставить убрать дубли ни из DBLookupComboBox, ни из DBComboBox. В принципе повторы-то удаляются, это видно по DBGreed, но в выпадающих списках или пусто или все содержимое поля. Не совсем понял установку индекса
Цитата Сообщение от [XandeR
;640119]устанавливаешь MasterFields
, таблица-то одна? Спасибо!
0
0 / 0 / 0
Регистрация: 08.04.2010
Сообщений: 26
21.07.2010, 17:38
Цитата Сообщение от [XandeR] Посмотреть сообщение
3. Устанавливаешь имя таблицы в которой при выборе из DBLookupComboBox автоматически будут фильтроватся данные
Объясните, пожалуйста, куда именно устанавливать?
Если в Query1 в DateSource в DateSet, то я, наверное, что-то не так делаю, потому что в table в поле MasterSource ничего не появляется. SQL запрос таким должен быть?
C++
1
2
SELECT DISTINCT Initial
FROM ':TTT:tab.db'
Добавлено через 11 минут
P.S.Мне нужно удалить повторы в DBLookupComboBox.
0
8 / 7 / 2
Регистрация: 22.02.2010
Сообщений: 118
22.07.2010, 15:52  [ТС]
В свойстве Query1- DatabaseName надо выбрать Alias (Псевдоним) Вашей базы данных. В DataSourse1 в свойстве DataSet установить Query1. A свойство Query1 - DataSourse оставить пустым. Все должно заработать.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
22.07.2010, 15:52
Помогаю со студенческими работами здесь

Удалить повторы из словаря
Есть текст, там сплошная строка без пробелов и одни символы, для того чтобы расшифровать по виженеру мне нужно посчитать индекс совпадения...

Удалить повторы в ComboBox
Пробовала сделать вариантом написанным ниже, но не получилось for i:=1 to ComboBox1.Items.Count do begin item:=ComboBox1.Items; ...

Удалить повторы в массивах
Есть многомерный массив Пример: =1,1,1,1,1,1,1,1,1<-надо удалить =2,2,2,2,2,2,2,2,2<-надо удалить =1,1,1,'1',1,1,1,2,1<-этот не...

Удалить повторы в строках
Доброго времени суток. Нужен код, который способен удалять дубли из строк. Пример: alexey<alexey@mail.ru> ...

Удалить повторы слов
В предложение возможны повторы слов. Удалить эти повторы.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
Фото: Daniel Greenwood
kumehtar 13.11.2025
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru