Главная страница
    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.46 MB
Время: 0.013 c
4-1194154748
San1712
2007-11-04 08:39
2008.08.03
Как можно программно отследить перемещения по реестру человека ?


15-1213859829
antarion
2008-06-19 11:17
2008.08.03
Вакансия программиста Delphi


2-1215040775
Si13
2008-07-03 03:19
2008.08.03
VSL Form, проблемы с открытием


15-1213864819
Сергей_77
2008-06-19 12:40
2008.08.03
Виртуальная Машина


2-1214924771
blazerad
2008-07-01 19:06
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
Английский Французский Немецкий Итальянский Португальский Русский Испанский