| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Базы данных и репортинг > SQL запрос из связанных таблиц |
| Автор: vslabchenko 5.5.2009, 15:40 |
| День добрый! Помогите,пожалуйста,разобраться.Есть две таблицы- Области(OblastID,Name_Oblast) и Контрагенты(ContragentsID,Oblast и т.п.).В таблице Contragents в поле Oblast данные выводятся в цифровом виде,а в поле Name_Oblast таблицы Oblast- в текстовом, именно сами названия областей.Связаны по полям OblastID-Oblast. На форме есть Grid,Edit,Button. В Gride все отображается отлично,проблемы наступают когда пытаюсь произвести выборку из базы Contragents о полю Oblast.Делаю так: DataModule.QueryContragents.Active:=false; DataModule.QueryContragents.SQL.Clear; DataModule.QueryContragents.SQL.Add('SELECT*'); DataModule.QueryContragents.SQL.Add('FROM Contragents,Oblast'); DataModule.QueryContragents.SQL.Add('WHERE Contragents.Oblast=Oblast.OblastID '''+Edit2.Text+''''); DataModule.QueryContragents.Active:=true; В итоге при запуске приложения, вводе в Edit необходимого значения области и нажатии на Button работа приложения заканчивается и выдается сообщение :Project raised exception class EOIeException with message 'Line3:Incorrect syntax near 'Минская'.Process stopped.' Помогите,пожалуйста,запутался... |
| Автор: Akella 5.5.2009, 16:22 | ||
а пробелы... Добавлено через 21 секунду И оформи код тэгами, как положено. Добавлено через 1 минуту и 29 секунд Для большей читабельности лучше так:
|
| Автор: Keeper89 5.5.2009, 16:47 |
По-моему с параметрами будет еще лучше. |
| Автор: insoft 5.5.2009, 17:41 | ||
| vslabchenko, судя из ошибки, то неверный синтаксис проще всего проверь запрос который у тебя получается
|
| Автор: vslabchenko 7.5.2009, 16:44 |
| Спасибо всем ответившим, но это все не то... |