Вниз
Скачать: 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.013 c
3-82089
RDA
2003-09-05 11:54
2003.09.25
Выбор полей по условию


3-82069
ikhodov
2003-09-01 11:59
2003.09.25
Связь master/detail таблиц с автоинк-идентификатором


14-82465
Dilezzz
2003-09-07 15:55
2003.09.25
Какой-то этот сайт непрофессиональный


3-82143
АлеКс
2003-09-04 09:51
2003.09.25
Запрос


14-82419
SPeller
2003-09-07 07:10
2003.09.25
Вопрос по CBuilder-у и Дельфи




   Наверх