Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Бази";
Поточний архів: 2002.12.23;
Завантажити: [xml.tar.bz2];

Вниз

підстановка значення поля в SQL запит. Знайти схожі гілки


Shapovalov Kirill   (2002-12-05 09:38) [0]

Здравствуйте. Столкнулся с проблемой. Имеется запрос который считает количество студентов в группе. Когда в sql builder"e выполняешь е запрос, то всё хорошо. Во время работы программы я изменяю запрос так
format(Select * from student where gruppa=%s,[Form1.Edit1.text]);
То есть подставляю значения поля. потом выбираю метод execSQL.
И пророга у меня ничего не считает.
Питання такі:
1) Как правильно подстанавливать значения полей.
2) Как правильно выполнять запросы.

Спасибо.



stone   (2002-12-05 09:43) [1]

використовуй параметри



Max Zyuzin   (2002-12-05 09:45) [2]

К тому же метод ExecSQL сипользуется для команд Edit, Update и Delete. Для Select используется Open; (это по второму вопросу),
а по первому - использовать параметры... умеешь?



Anatoly Podgoretsky   (2002-12-05 09:49) [3]

дві помилки
1. форматная строка должна быть в одинарных кавычках
2. используешь не тот метод, надо Open



neXt   (2002-12-05 09:49) [4]

в тексте запроса нужно написать что-то вроде

Select * from student where gruppa = :group

в свойстве Query.Params, в дизайн-тайме, нужно указать тип данных для параметра (DataType), например целое.
а в обработчике события OnBeforeOpen у Query написать что-то вроде.

Query.ParamByName("group").AsInteger := 1000;
// ну или что-там нужно




Shapovalov Kirill   (2002-12-05 09:50) [5]

Нет. :( Где про это почитать? Или хотя бы синтаксис команды. в хелпе поковыряю.



Max Zyuzin   (2002-12-05 10:32) [6]

>Shapovalov Kirill (05.12.02 09:50)
http://www.citforum.ru/programming/32less/index.shtml
Целая книга по Дельфи.
Почитай про работу с БД.
И поищи вообще на этом сайте, там много еще чего есть.

В твоем варианте должно быть примерно так...
Query1.SQL.Clear;
Query1.SQL.Add("Select * from student where gruppa = :group");
Query1.ParamByName("group").AsInteger := 1000;
// Тут все зависит от того какого типа у тебя поле gruppa...
QUery1.Open;



сторінки: 1 вся гілка

Форум: "Бази";
Поточний архів: 2002.12.23;
Завантажити: [xml.tar.bz2];

наверх









Пам'ять: 0.57 MB
Час: 0.028 c
1-74693
дитина
2002-12-12 14:24
2002.12.23
TSaveDialog


1-74738
хватка
2002-12-14 15:24
2002.12.23
какже працювати з текстовими файлами? -відповідь


1-74826
harismatik
2002-12-11 20:46
2002.12.23
Введення фрагмента HTML коду


14-74898
Хох
2002-12-04 13:16
2002.12.23
Реєстрація Delphi 7


3-74584
ev1972
2002-12-04 16:03
2002.12.23
Як модифікувати структуру таблиці в Delphi?





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в'єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська