Текущий архив: 2006.03.19;
Скачать: CL | DM;
Вниз
Добрый день. Никак не могу разобраться с параметрами Найти похожие ветки
← →
Param[...] (2006-02-27 15:44) [0](IBDataSet, FIBDataSet)
В DataSet такой запрос:
INSERT INTO MAIN(
Col_1,
Col_2
)
VALUES(
:Col_1,
:Col_2
)
Как :Col_1, :Col_2 присвоить значения Edit1.Text, Edit2.Text
ParamByName("Col_1").Value := Edit1.Text - выдает ошибку, пишет что не найден парметр Col_1;
В IBQuery, например, есть меню Params[...] где их можно определить. А как это сделать в IBDataSet (FIBDataSet).
← →
Sergey13 © (2006-02-27 15:48) [1]>А как это сделать в IBDataSet (FIBDataSet).
DataSet - переводится как "Набор данных". Какой набор данных ты хочешь получить командой INSERT INTO MAIN?
← →
Johnmen © (2006-02-27 15:51) [2]Если внимательно читать хелп и документацию, то легко можно увидеть, что компоненты IBDataSet, FIBDataSet и иже с ними НЕ предназначены для выполнения модифицирующих запросов.
Если же имелось в виду соответствующее свойство, типа ModifySQL, то, чисто теоретически, запрос верен.
← →
Param[...] (2006-02-27 15:55) [3]А для чего тогда в свойствах присутствует InsertSQL...
← →
Johnmen © (2006-02-27 15:59) [4]А ты уверен, что поля у тебя так и называются, Col_1, Col_2 ?
← →
Sergey13 © (2006-02-27 16:01) [5]2[3] Param[...] (27.02.06 15:55)
>А для чего тогда в свойствах присутствует InsertSQL...
А ты думаешь InsertSQL - это датасет? Это запрос модифицирующий данные которые содержатся в датасете. Разницу чуешь?
← →
Param[...] (2006-02-27 16:12) [6]И зачем тогда в ДатаСет есть функция ParamByName???
_____________________________________________________
Что-то я никак не въеду.
Мне нужно добавить в таблицу новую запись. Данные заполняются пользователем в обычных Edit1.text.
Как SQL запросом INSRT INTO добавить их туда.
← →
Johnmen © (2006-02-27 16:20) [7]>И зачем тогда в ДатаСет есть функция ParamByName???
Чтобы использовать параметры в селективном запросе.
← →
Sergey13 © (2006-02-27 16:21) [8]2 [6] Param[...] (27.02.06 16:12)
>И зачем тогда в ДатаСет есть функция ParamByName???
А по твоему запрос на получение набора данных не может быть параметрическим?
>Как SQL запросом INSRT INTO добавить их туда.
Либо отдельным запросом, либо заполнить InsertSQL отображающего данные датасета.
← →
Mikhail V © (2006-02-27 16:26) [9]Есть предположение, что отсутствует SelectSQL
← →
Param[...] (2006-02-27 16:31) [10]Mikhail V © (27.02.06 16:26) [9]
Есть предположение, что отсутствует SelectSQL
ДатаСет один. В нем запрос: Select * From Table - выводит данные в ДБГриде. На другой форме находятся Edit"ы. Insert также прописан в этом ДатаСете
← →
Johnmen © (2006-02-27 16:35) [11]Значения параметров для InsertSQL и т.д. берутся автоматически из текущей записи НД из соответствующих полей.
← →
Param[...] (2006-02-27 16:40) [12]Если я правильно понял, то нужно:
StartTransaction;
Append;
FieldByName("Col_1").value := Edit1.text;
ApplyUpdate;
А ДатаСет сам заполнит необходимые параметры.
← →
Mikhail V © (2006-02-27 16:42) [13]
> Param[...] (27.02.06 16:31) [10]
Ах, ну тогда FieldByName()
← →
Sergey13 © (2006-02-27 16:43) [14]2[11] Johnmen © (27.02.06 16:35)
Не автоматически вроде. Надо выбрать соответствующие поля и нажать кнопку "Создать" (или как то так).
← →
Johnmen © (2006-02-27 16:45) [15]>Sergey13 © (27.02.06 16:43) [14]
Автоматом...
Страницы: 1 вся ветка
Текущий архив: 2006.03.19;
Скачать: CL | DM;
Память: 0.47 MB
Время: 0.013 c