| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > Программная реализация Sql-запросов средствами Del |
| Автор: Zerony 16.9.2010, 18:54 |
| Здравствуйте! Нам дали на самостоятельное изучение реализацию SQL-запросов с помощью Delphi. Тема несложная, но на самом последнем этапе трудности всё-таки возникли. Вот задание: Практическое задание 1.С помощью MS Access создайте таблицу БД в соответствие с Табл. 1. Создайте в таблице не менее пяти записей. 2.Используя программный способ формирования SQL-запросов, создайте приложение, которое реализует следующие возможности: - Определяет номер телефона по фамилии абонента; - Определяет фамилию, имя, отчество и адрес абонента по номеру телефона; - Выдает все номера телефонов, Ф.И.О. и номера квартир абонентов, проживающих на одной улице в одном доме (по указанному номеру дома и указанной улице Вот с последним-то заданием я и не справилась. У меня есть два Edit'а-один для ввода улицы, другой для ввода дома, кнопка, в процедуре написано следующее: Код: procedure TForm1.Button4Click(Sender: TObject); begin ADOQuery1.Active:=False; ADOQuery1.Close; ADOQuery1.SQL.Clear; ADOQuery1.SQL.Add('SELECT PhoneNum, FName, LName, PhName , Kv'); ADOQuery1.SQL.Add('FROM Таблица1'); ADOQuery1.SQL.Add('WHERE Street='+'"'+Edit4.Text+'"'); //ADOQuery1.SQL.Add('WHERE House='+'"'+Edit9.Text+'"'); ADOQuery1.Open; ADOQuery1.Active:=True; end; По отдельности (когда один из них закомментирован) запросы работают правильно, но вместе никак не хотят, программа вылетает и выдаёт ошибку "Ошибка синтаксиса (пропущен оператор) в выражении запроса Street="Пушкина" WHERE House="77"" |
| Автор: cat512 16.9.2010, 19:25 | ||||
| А зачем два раза добавлять where??? Общая конструкция:
Вот так попробуй:
|
| Автор: Данкинг 16.9.2010, 19:25 |
| Ну правильно, видимо, and вместо второго where нужен. |