Вниз
Скачать: 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 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.029 c
4-1135673481
SergeyZ
2005-12-27 11:51
2006.03.19
Трассировка событий в Виндовс


1-1139581439
17Landgraf
2006-02-10 17:23
2006.03.19
Delphi 6 и Crystal Reports 10, подскажите.......


2-1141316644
Vitalik__
2006-03-02 19:24
2006.03.19
замена StringGrid а


3-1138354243
Barsky
2006-01-27 12:30
2006.03.19
Как сделать выборку не чувствительную к регистру?


2-1141512555
anonymous-
2006-03-05 01:49
2006.03.19
Pure VCL vs. ActiveX




   Наверх