Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.02.17;
Скачать: CL | DM;

Вниз

Как выполнить запрос   Найти похожие ветки 

 
alll_23   (2007-10-03 15:08) [0]

Увадаемые мастера, как мне выполнить запрос на вставку записи в таблицу БД interbase через клиенстское приложение.
На форме у меня IBDateBase1, DBgrid1, IBDataSet1 и IBTransaction1 ну и DataSource. Все компоненты связанны вроде правильно так как к примеру в IBDataSet1.Sqlselect.text вставляю предварительно приготовленный запрос и выполняю,
так же пытаюсь зделать и с запросом на вставку примерно так
insert into table(grid,fio)values(""""edit1.text..... только в IBDataSet1.Sqlinsert.text ну с самим запросом всё нормальнь тоесть нормально с кавычками, а как быть с транзакцией (как закомитить чтобы эта запись появилась в таблице. Вы конечно извените,а то сижу в Инеткафе немогу скинуть код показать


 
engine ©   (2007-10-03 15:25) [1]

> insert into table(grid,fio)values(""""edit1.text&#133

Лучше работать c параметрами:
insert into table(grid, fio) values (:fromEdit1,&#133

IBDataSet1.ParamByName("fromEdit1").Value := Edit1.Text;


По поводу транзакций:
IBTransaction1.StartTransaction;
&#133
IBTransaction1.Commit;


 
alll_23   (2007-10-03 15:31) [2]

Ага понятно ну транзакцией я так и делал но была ошибка Тransaction is Active почему не пойму может через параметры попробую и будет работать


 
alll_23   (2007-10-03 15:39) [3]

Но оно может и лучше или наверно лучше
ну с транзакцие я так и делал должно же работать?
IBTransaction1.StartTransaction;

IBTransaction1.Commit;


 
Sergey13 ©   (2007-10-03 15:45) [4]

> [0] alll_23   (03.10.07 15:08)
> так же пытаюсь зделать и с запросом на вставку

В смысле

> в IBDataSet1.Sqlselect.text вставляю предварительно приготовленный запрос и выполняю,

Так что ли?


 
alll_23   (2007-10-03 15:46) [5]

Да


 
alll_23   (2007-10-03 15:46) [6]

Нет


 
alll_23   (2007-10-03 15:47) [7]

в ibdateset.sqlinsert.text


 
Sergey13 ©   (2007-10-03 15:55) [8]

> [5] alll_23   (03.10.07 15:46)
> Да
> [6] alll_23   (03.10.07 15:46)
> Нет

А "может быть"?

Записав в Sqlselect запрос и вызвав (дважды кликнув по датасету) редактор датасета, можно с помощью мышки сформировать правильные запросы, которые будут срабатывать при вызове методов датасета типа insert. Стартовать явно транзакцию при этом не надо, т.к. датасет открыт уже в контексте какой то транзакции. Крмитить после Post можно TIBTransaction.CommitRetaining.


 
alll_23   (2007-10-03 15:58) [9]

Не пойму ваши термины DataSet перед каждым запросом закрываю потом открываю


 
alll_23   (2007-10-03 16:00) [10]

Ага так нужно закрыть дата сет перед транзакцией


 
Sergey13 ©   (2007-10-03 16:01) [11]

> [9] alll_23   (03.10.07 15:58)
> Не пойму ваши термины

Наверное тогда надо почитать книжку.


 
alll_23   (2007-10-03 16:02) [12]

Вот это лучше вы дали мне кусочек кода ведь он не большой :) а то прийду домой и опять блудить в коде буду в пяти строчках грубо говоря


 
Sergey13 ©   (2007-10-03 16:03) [13]

> [12] alll_23   (03.10.07 16:02)
> а то прийду домой и опять блудить в коде буду

А ты себя по рукам бей что бы не блудить. Или по голове. 8-)


 
alll_23   (2007-10-03 16:05) [14]

Да понял я термины не понял механизмы работы с клиенского приложения
через эти компоненты ранше делал через Qurye, GRid и DataSorce и было всё понятно


 
Sergey13 ©   (2007-10-03 16:09) [15]

> [14] alll_23   (03.10.07 16:05)

Ну так почитай про датасет (TIBDataSet) в хелпе например. Там и примеры кода есть.



Страницы: 1 вся ветка

Текущий архив: 2008.02.17;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.014 c
8-1173611587
Игорь 2222
2007-03-11 14:13
2008.02.17
Что то похожее на Paint


15-1200452599
Slider007
2008-01-16 06:03
2008.02.17
С днем рождения ! 16 января 2008 среда


15-1200538558
Tirael
2008-01-17 05:55
2008.02.17
из за чего может быть такой глюк?


2-1201155932
Василий К.
2008-01-24 09:25
2008.02.17
Extended в TThread и его деление...


2-1201253294
Nicola
2008-01-25 12:28
2008.02.17
Данные из массива