Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.02.2010, 22:15   #1
Egik_net
Пользователь
 
Регистрация: 16.10.2009
Сообщений: 23
Вопрос Поиск в базе данных

Есть несколько полей "DBEdit" из БД. Эти поля содержат значения из БД. (например имя, фамилия). Необходимо что бы при вводе с клавиатуры в одно такое поле( вводится уникальный код), не сохранялись, а выполнялся поиск по БД и другие поля принимали значение соответствующей коду записи.
Например: в поле код вводится "64789"

id name kod
1 Вася Пупкин 44587
2 Василий Иванов 64789

Соответственно, после введения в поле код значения "64789", поле id поле id принимало значение "2" а name "Василий Иванов"

Подскажите как это осуществить, возможно у DBEdit есть какое-то свойство, позволяющие это сделать, или надо писать специальную процедуру?
Если нет времени, прошу хотя бы написать приблизительный алгоритм.
Egik_net вне форума Ответить с цитированием
Старый 16.02.2010, 22:39   #2
maLoy*508
Форумчанин
 
Аватар для maLoy*508
 
Регистрация: 28.03.2008
Сообщений: 672
По умолчанию

почитай про Locate в хелпе, там и пример есть
что-то примерно
Table1.Locate([где ищем],[что ищем],[параметр(можно оставить пустым])

или же просто запросом
Select [имена полей]
From [имена таблиц]
where kod = 64789

если что непонятно - спрашивай
maLoy*508 вне форума Ответить с цитированием
Старый 17.02.2010, 00:35   #3
mihali4
*
Старожил
 
Регистрация: 22.11.2006
Сообщений: 9,201
По умолчанию

Делается по-другому (хотя предыдущий ответ уже частично дал верный путь).
Берется обычный эдит, на его событие OnChange вешается Locate по Table, и в результате мы всегда имеем самой первой строкой в дбгриде наиболее похожую строку... Проверено неоднократно на сетевом интербейсе.
Без жутких Query и связанных с ним пертурбациями в их SQL.Text, а самое главное - не имеем потерь времени на Query.Close/Query.Open, которые тут, по большому счету, и вовсе не нужны...
mihali4 вне форума Ответить с цитированием
Старый 17.02.2010, 21:47   #4
Egik_net
Пользователь
 
Регистрация: 16.10.2009
Сообщений: 23
По умолчанию

Спасибо огромнущие! Написал, всё работает)
Egik_net вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
поиск по базе данных [c++ builder 6] getUp C++ Builder 1 18.10.2009 22:50
Хэш-поиск по базе данных Deimossy Паскаль, Turbo Pascal, PascalABC.NET 1 13.05.2009 17:58
Поиск в базе данных St-Dyx Microsoft Office Excel 8 19.10.2008 12:13
Поиск по базе данных ERASERROR БД в Delphi 4 14.03.2008 16:34