|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
16.06.2008, 20:39 | #1 |
Пользователь
Регистрация: 19.05.2008
Сообщений: 36
|
SQL-запрос
Добрый день. Необходимо сделать следующий запрос. У меня имеется combobox(он подключен к таблице Компьютеры(тоесть сам считывает всё что есть в поле "№ ПК")) мне нужно сделать так чтобы при выборе интересующего меня ПК(в combobox) запрос переходил на вторую таблицу(В ней есть поля № ПК и № установленной программы) Там сравнивал № ПК который я выбрал и все программы которые я к нему присвоил. После чего переходил к третей таблице(Список программ) и выбирал из неё те программы которые запомнил из второй таблицы(Есть поля № программы, Название, Системные требования). Конечным результатом должен быть вывод этой информации в dbgrid. Помогите всю голову сломал с этим запросом.
Последний раз редактировалось Dissonance; 16.06.2008 в 21:12. |
16.06.2008, 21:03 | #2 |
Форумчанин
Регистрация: 23.05.2008
Сообщений: 219
|
Запрос такой:
Код:
Код:
Разбирайся.
The Revolution is Now!
|
16.06.2008, 21:10 | #3 |
Пользователь
Регистрация: 19.05.2008
Сообщений: 36
|
блин может ещё кто нибуть знает
|
16.06.2008, 22:01 | #4 |
Пользователь
Регистрация: 19.05.2008
Сообщений: 36
|
Очень срочно надо диплом горит помогите плиз
|
17.06.2008, 06:58 | #5 |
Пользователь
Регистрация: 19.05.2008
Сообщений: 36
|
Вот я код примерный получил
После выбора в comboBox1 заполнить ComboBox2 значениями поля "№ установленной программы" из второй таблицы. В событии ComboBox2 OnEnter прописать Код: With Query1 do begin Close; SQL.Clear; SQL.Add('SELECT Numbprogr'); SQL.Add('FROM CatalogProgram'); SQL.Add('WHERE NumbComp = ' + quotedstr(ComboBox1.Text); SQL.Add('ORDER BY Numbprogr'); Open; First; ComboBox2.Items.Clear; for i:=0 to RecordCount-1 do begin If Fields[0].AsString <> '' then ComboBox2.Items.Add(Fields[0].AsString); Next; end; end; Теперь выбираем из списка ComboBox2 нужный номер и нажимаем на button, где прописываем. Код: With Query2 do begin Close; SQL.Clear; SQL.Add('SELECT SpisokProgram.Numbprogr, name, SystTreb'); SQL.Add('FROM CatalogProgram, SpisokProgram'); SQL.Add('WHERE SpisokProgram.Numbprogr = CatalogProgram.Numbprogr'); SQL.Add('AND NumbComp = ' + quotedstr(ComboBox1.Text); SQL.Add('AND Numbprogr = ' + quotedstr(ComboBox2.Text); Open; end; Query2 должен быть подключен к DBGrid. |
17.06.2008, 07:11 | #6 |
Форумчанин
Регистрация: 15.06.2008
Сообщений: 271
|
Можно и одним запросом:
Код:
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
запрос ссылается на несвязанный с ним запрос | kolebatel | SQL, базы данных | 0 | 11.06.2008 12:50 |
SQL запрос | Uomo | БД в Delphi | 17 | 23.04.2008 14:12 |
SQL запрос | SERG1980 | БД в Delphi | 6 | 19.10.2007 23:03 |
SQL-запрос | Alexey_vyb | БД в Delphi | 4 | 22.05.2007 18:52 |
SQL-запрос | Elena | БД в Delphi | 3 | 17.05.2007 15:13 |