Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.25;
Скачать: 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 вся ветка

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

Наверх




Память: 0.48 MB
Время: 0.029 c
1-82240
MakNik
2003-09-15 14:16
2003.09.25
QReport


8-82344
WInAPi Lamer
2003-05-26 17:02
2003.09.25
Мастера помогите плиз.......нарисовать ромашку


7-82530
Cosmic
2003-07-12 13:46
2003.09.25
Autorun in Safe Mode


6-82378
ronin
2003-07-29 08:53
2003.09.25
Работа с прокси


3-82094
Фикус
2003-09-04 14:56
2003.09.25
dbf -> interbase