Вниз
Скачать: CL | DM;

TSQLClientDataSet и метод Execute???   Найти похожие ветки 

 
Max_   (2003-09-04 17:03) [0]

У меня такая вот цепочка(dbExpress):
TSQLConnection->TSQLClientDataSet->TDataSource->TDBgrid
1) Когда я запускаю так:

SQLClientDataSet1.Close;
SQLClientDataSet1.CommandText:="select * from my_table";
SQLClientDataSet1.Open;

все прекрасно работает, но когда я хочу выполнить Update и пишу
вот так:
SQLClientDataSet1.Close;
SQLClientDataSet1.CommandText:="update my_table set field=2";
SQLClientDataSet1.Execute;

то выдаёт ошибку, что запрос не определён! Как выполнять Update, Delete, Insert через Execute?


 
Nikolay M. ©   (2003-09-04 17:10) [1]

Открываем хелп на Execute, читаем:

Executes an SQL command by the provider’s dataset.


 
Max_   (2003-09-04 17:35) [2]

В том то и дело, что Executes an SQL command by the provider’s dataset. А ты (Nikolay M.) задайся вопросом: Что такое TSQLClientDataSet? Это случайно не два в одном- DataSet Provider+ClientDataSet!!!!! Я не зря цепочку показал!
P.S. и Help не надо учить меня читать! :)


 
Nikolay M. ©   (2003-09-04 17:38) [3]

Угу, поторопился, просмотрел :)
Тогда я - пас.


 
Arm79 ©   (2003-09-04 18:39) [4]

А нельзя использовать SQLClientDataSet1.ApplayUpdates?


 
Vlad ©   (2003-09-04 19:01) [5]

С какой СУБД работаешь ? Если с ораклом, то наверное update в begin - блок заключать надо


 
Max_   (2003-09-05 10:18) [6]

С ораклом, с ораклом! :) update в begin??? Это как?

begin
SQLClientDataSet1.Close;
SQLClientDataSet1.CommandText:="update my_table set field=2";
SQLClientDataSet1.Execute;
end;

:) :) :) Неееееее, мне кажется здесь что-то другое!


 
Vlad ©   (2003-09-05 10:22) [7]

>Max_ (05.09.03 10:18) [6]
ты че не проснулся чтоли ? :-)
Я чесно говоря не пользовался SQLClientDataSet, но есть подозрение что CommandText нужно писать так:
"Begin update my_table set field=2; End;"
В оракле это называется анонимный бегин-блок.


 
Max_   (2003-09-05 10:42) [8]

Я с ораклом работаю уж 2 года и не встречал что-бы единственный Update требовал бегин-блок. Это же не Microsoft SQL Server где GO для пакетов писать нужно в некоторых случаях:

use northwind
go
create view my_view as select * from my_table
go

Ошибку не Оракл выдаёт, а Delphi: SQL Statement for dataset is not defined!


 
Vlad ©   (2003-09-05 10:50) [9]

Тогда лишь могу посоветовать смотреть исходники метода
SQLClientDataSet1.Execute...



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

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



Память: 0.47 MB
Время: 0.022 c
1-82241
mur
2003-09-11 22:34
2003.09.25
---|Ветка была без названия|---


1-82197
abHaz
2003-09-12 15:06
2003.09.25
объекты и их


14-82420
NailMan
2003-09-08 19:13
2003.09.25
Kreed и как оно себе на уме


6-82369
Vintik
2003-07-26 15:32
2003.09.25
надо чтобы текст добавлялся виде HTML кода в TWebBrowser


4-82539
Mantic0re
2003-07-22 13:07
2003.09.25
Обработка фокуса ..




   Наверх