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

Вниз

ADO. Присвоение результата Execute   Найти похожие ветки 

 
fog   (2008-07-04 19:07) [0]

Возможно ли сделать за один проход следующее:
ADOCommand1.CommandText :=
"CREATE TABLE "+ d + " (" +
 "ID AUTOINCREMENT (1,1) CONSTRAINT PrimaryKey UNIQUE,"+
 "Date DATETIME," +
 "Description MEMO)";
ADOCommand1.Execute;
ADODataSet1.CommandText := "SELECT * FROM " + d;
ADODataSet1.Open;

В этом виде работает.

ADODataSet1 := ADOCommand1.Execute вместо последних двух строк дает ошибку (при ADODataSet1.CommandText = "").
d - генерируется RT (изначально неизвестно).


 
Плохиш ©   (2008-07-04 21:38) [1]


> ADODataSet1 := ADOCommand1.Execute вместо последних двух
> строк дает ошибку (при ADODataSet1.CommandText = "").

Маразм какой-то :-( Неужели трудно в справку посмотреть? Там всего-то копи/паст надо сделать. Вот и подросло новое поколение, даже не знаю как назвать...


 
Плохиш ©   (2008-07-04 21:40) [2]

Я сегодня добрый, на тебе кусок из справки

Die Methode Execute kann bei bestimmten Befehlen auch ein Recordset-Objekt zurückgeben. Um dieses Objekt verwenden zu können, müssen Sie eine ADO-Datenmenge bereitstellen. Weisen Sie dann den Rückgabewert von Execute direkt der Eigenschaft Recordset der Datenmenge zu. Ein Beispiel


 
fog   (2008-07-04 21:59) [3]

Хоть на арабском

ADOCommand1.Execute;
ADODataSet1.CommandText := "SELECT * FROM " + d;
ADODataSet1.Open;

работает только так.


1. ADODataSet1.CommandText := "SELECT * FROM " + d;
2. ADODataSet1.Open;
3. ADODataSet1.Recordset := ADOCommand1.Execute;


Без 1. и 2. получишь, что Dataset не открыт.
Без 2. - тоже самое
С 2. - "таблицы нет" (ежу понятно).


 
Плохиш ©   (2008-07-04 22:18) [4]


> fog   (04.07.08 21:59) [3]

Всё прекрасно работает, как в справке и описано.
Хотя, я подозреваю какой запрос ты в ADOCommand1 запихал, но это сугубо твои проблемы...


 
Плохиш ©   (2008-07-04 22:25) [5]

Я сегодня дважды добрый :-)

> 3. ADODataSet1.Recordset := ADOCommand1.Execute;

Для выполнения этого, в ADOCommand1 должен быть задан запрос, возвращающий набор данных, т.е. твой select, а запросы типа create не возвращают наборов данных.


 
fog   (2008-07-04 22:30) [6]


> Хотя, я подозреваю какой запрос ты в ADOCommand1 запихал,
>  но это сугубо твои проблемы...


запрос указан.


> запросы типа create не возвращают наборов данных.


С этого бы начать... И на том спасибо.



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

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

Наверх




Память: 0.48 MB
Время: 0.016 c
15-1213891081
stas
2008-06-19 19:58
2008.08.03
Снять информацию с неразбтого диска


4-1193654690
Dmitry_177
2007-10-29 13:44
2008.08.03
почему не срабатывает таймер?


2-1214939991
Casper
2008-07-01 23:19
2008.08.03
прокрутка изображения в компоненте TImage


2-1215189621
гыгы
2008-07-04 20:40
2008.08.03
Прозрачность


15-1213651482
k2_
2008-06-17 01:24
2008.08.03
Симпатишный дизайн, полюбуйтесь.