![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Создать RecordSet без Connection... [D5, D7]
manumba © (2003-04-04 13:27:00)Нужно создать ReocrdSet и заполнить его данными из проги (без подключения к БД).
Откуда проблема появилась:
есть СОM-обьект, который возвращает данные через _RecordSet (ADO). Есть много клиентов, которые получают этот РекордСет (клиенты написаны на разных языках)...
Теперь нужно убрать БД и передавать данные таким же способом (чтобы не изменять клиенты), но без БД (данные - это маленький словарик).....для этого нужно заполнить RecordSet программно...Это вообще реально?
Dok_3D (2003-04-04 21:20:00) [1]2 manumba
Нет, TADODataSet.CreateDataSet не работает без Connection (TADOConnection)...а у мне нужно без него работать.
Вай вай, manumba, как вы ошибаетесь, прекрасно все работает без ADOConnection. А у ADODataSet есть свойство _Recordset, можно работать напрямую прямо с ним.
Но совет Polevi, безусловно, лучше...
manumba (2003-04-04 17:30:00) [2]Polevi: Огромный сенкс!! ( вот посмотришь на чужой код, все так легко и просто...:)) )
Polevi (2003-04-04 16:46:00) [3]procedure TForm1.FormCreate(Sender: TObject);
var
rs:OleVariant;
begin
rs:=CreateOleObject("ADODB.Recordset");
rs.Fields.Append("ID",adInteger,4);
rs.Fields.Append("Name",adVarChar,20);
rs.Open;
rs.AddNew;
rs.Fields["ID"].Value:=1;
rs.Fields["Name"].Value:="Test1";
rs.AddNew;
rs.Fields["ID"].Value:=2;
rs.Fields["Name"].Value:="Test2";
ADODS.Recordset:=IUnknown(rs) as _Recordset;
end;
PS
ADODS - это TADODataset c не заданым Connection
manumba (2003-04-04 15:57:00) [4]ClientDataSet может возвращать данные так, чтобы их могли читать с других языках программирования ? (т.е. через _RecordSet). А про ADODataset с самого начала я не говорил...просто с ним легче работать, чем напрямую через интерфейс _RecordSet...
sniknik (2003-04-04 15:03:00) [5]а ClientDataSet нельзя использовать? почму именно ADODataSet?
manumba (2003-04-04 14:46:00) [6]Нет, TADODataSet.CreateDataSet не работает без Connection (TADOConnection)...а у мне нужно без него работать.
stone (2003-04-04 13:30:00) [7]Если я правильно понял, то нужно
TADODataSet.CreateDataSet;