Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.08.03;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.007 c
2-1215089858
Муслик
2008-07-03 16:57
2008.08.03
Запрос


15-1213350730
Mystic
2008-06-13 13:52
2008.08.03
JavaScript, шахматы, перемещалка фигур, alpha


2-1215083265
TUserClass
2008-07-03 15:07
2008.08.03
Скопировать TListView в другой TListView..


4-1193628432
031178
2007-10-29 06:27
2008.08.03
Как программно поменять частоту обновления экрана


15-1213627509
Viktor198
2008-06-16 18:45
2008.08.03
Помогите составить блок-схему для программы!!!





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский