|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||||||||||||||||||||||||||||||||||||||||
Delphi 6-7 Интересное значение filter11.06.2018, 14:04. Показов 1558. Ответов 15
Метки нет (Все метки)
Всем привет! Начал разбираться с базами данных на Delphi 7 и столкнулся с одной интересной особенностью значения filter.
Имеется таблица в MS Access:
В дельфи на форму добавлены ADOTable, DataSource, DBGrid и Button. Все подключения настроены. В DBGrid отображается таблица. Далее код по удалению строки из таблицы:
Далее сделал так:
А теперь вопрос: куда передается строка
0
|
||||||||||||||||||||||||||||||||||||||||
| 11.06.2018, 14:04 | |
|
Ответы с готовыми решениями:
15
MixItUp: применить к селектору значение data-filter что бы работало как кнопка.
ИНТЕРЕСНОЕ)) |
|
Модератор
|
||
| 11.06.2018, 14:23 | ||
Сообщение было отмечено SashaRasha как решение
Решение
SashaRasha, прочитайте, что такое фильтр в таблицах БД и как он применяется...
Надеюсь, после этого Вы поймете, какую ерунду тут написали:
1
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||
| 11.06.2018, 14:49 [ТС] | ||
|
Добавлено через 15 минут Все, понял. Это синтаксис фильтрации таблиц в БД.
0
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
| 11.06.2018, 14:50 [ТС] | |
|
Я немного вас опередил)
0
|
|
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
||||||
| 11.06.2018, 14:59 | ||||||
|
Непонятно, зачем нужна фильтрация при удалении строки из таблицы...
В принципе, весь код для удаления, выбранной в гриде строки, состоит лишь из следующей конструкции:
0
|
||||||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||
| 11.06.2018, 15:04 [ТС] | ||
|
0
|
||
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
||
| 11.06.2018, 15:18 | ||
|
К тому же, в коде ясно показано, что после установки фильтра идет позиционирование на последнюю запись отфильтрованного набора данных и только потом идет удаление этой последней строки. И, главное, с помощью метода Delete невозможно за один раз удалить несколько строк. Как правило, удаление нескольких строк из таблицы бывает не только как редкое исключение, но для этого применяют SQL запрос. А эта горотьба с фильтром при удалении, который затем, после удаления строк, нужно еще и снять, вещь для пользователя весьма неудобная.
1
|
||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|||||||
| 11.06.2018, 15:57 [ТС] | |||||||
|
Добавлено через 13 минут вот он:
0
|
|||||||
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
||||||
| 11.06.2018, 16:16 | ||||||
|
Лучше не брать у дилетантов коды - себе дороже.
Вся эта "нетленка", из которой скопирована фильтрация при удалении превращается в небольшой код:
И получается, что фильтр вообще здесь ни причём. А в случае удаления строки из одной таблицы даже Locate не нужен, т.к. выбранная для удаления строка уже та которая и требуется.
1
|
||||||
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
| 11.06.2018, 16:29 [ТС] | |
|
0
|
|
|
1076 / 989 / 340
Регистрация: 07.08.2012
Сообщений: 2,790
|
|
| 11.06.2018, 16:39 | |
|
Если может встретиться несколько одинаковых значений в поле, то да, можно применить и этот кондовый прием.
Довольно забавный, но работающий. Удачи! Вначале не увидел цикла while, отсюда и дискуссия.
1
|
|
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
|
| 13.06.2018, 11:22 [ТС] | |
|
Ребята, я все же не пойму. Куда передается chislo= '77' ? И как в самом access можно искать с помощью этого? Понятно, что это работает и ищет то, что нужно, но как?
0
|
|
|
91 / 47 / 8
Регистрация: 08.10.2008
Сообщений: 445
|
||||||
| 13.06.2018, 14:55 [ТС] | ||||||
|
Но там числовое значение
Сейчас по быстрому накидал программку
Проект Delphi 7, если понадобится:filter.rar Возможно придется перенастроить свойство ConectionString компонента ADOTable1.
0
|
||||||
|
|
|
| 13.06.2018, 15:09 | |
|
вы можете считать, что запрос выполняется внутри вашего датасета силами делфи
от этого его формат ничуть не меняется и вы можете смело думать про фильтр как SQL выражение WHERE
1
|
|
| 13.06.2018, 15:09 | |
|
Помогаю со студенческими работами здесь
16
Интересное предложение Интересное уравнение
интересное меню интересное наблюдение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
| Опции темы | |
|
|
Новые блоги и статьи
|
|||
|
Отчёт о затраченных материалах за определенный период с макетом печатной формы
Maks 21.04.2026
Отчёт из решения ниже размещён в конфигурации КА2.
Задача: разработка отчёта по затраченным материалам за определённый период, с возможностью вывода печатной формы отчёта с шапкой и подвалом.
В. . .
|
Отчёт о спецтехнике находящейся в ремонте
Maks 20.04.2026
Отчёт из решения ниже размещен в конфигурации КА2.
Задача: отобразить спецтехнику, которая на данный момент находится в ремонте.
Есть нетиповой документ "Заявка на ремонт спецтехники" который. . .
|
Памятка для бота и "визитка" для читателей "Semantic Universe Layer (Слой семантической вселенной)"
Hrethgir 19.04.2026
Сгенерировано для краткого описания по случаю сборки и компиляции скелета серверного приложения. И пусть после этого скажут, что статьи сгенерированные AI - туфта и не интересно. И это не реклама -. . .
|
Запрет удаления строк ТЧ документа при определённом условии
Maks 19.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "Аккумуляторы", разработанного в конфигурации КА2. У данного документа есть ТЧ, в которой в зависимости от прав доступа. . .
|
|
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут
Суть:
- Группа наркоманов из 10 человек.
- Только один инфицирован ВИЧ.
- Колются одной иглой.
- Колются раз в день.
- Колются последовательно через. . .
|
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
|
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
|
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . .
а удачный момент так и не приходит.
|