Как работать с atl ole db consumer?

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Djekson
Сообщения: 2
Зарегистрирован: 16 ноя 2004, 08:18

Добрый день всем!
Подскажите пожалуйста (или дайте ссылку) как работать с классом atl ole db consumer,т.е. читать и модифицировать наборы данных?
Я вставил такой класс:

[
db_source(L"Provider=MSDASQL.1;Persist Security Info=False;Data Source=mydsn;Extended Properties=\"DSN=mydsn\""),
db_table(L"DBA.testgr")
]
class CDBAtestgr1
{
public:
[ db_column(1, status=m_dwxStatus, length=m_dwxLength) ] double m_x;
[ db_column(2, status=m_dwyStatus, length=m_dwyLength) ] double m_y;


DBSTATUS m_dwxStatus;
DBSTATUS m_dwyStatus;


DBLENGTH m_dwxLength;
DBLENGTH m_dwyLength;


void GetRowsetProperties(CDBPropSet* pPropSet)
{
pPropSet->AddProperty(DBPROP_CANFETCHBACKWARDS, true, DBPROPOPTIONS_OPTIONAL);
pPropSet->AddProperty(DBPROP_CANSCROLLBACKWARDS, true, DBPROPOPTIONS_OPTIONAL);
pPropSet->AddProperty(DBPROP_IRowsetChange, true, DBPROPOPTIONS_OPTIONAL);
pPropSet->AddProperty(DBPROP_UPDATABILITY, DBPROPVAL_UP_CHANGE | DBPROPVAL_UP_INSERT | DBPROPVAL_UP_DELETE);
}
};



Затем пытаюсь сделать так
...
...
...
HRESULT hr;
CoInitialize(NULL);

CDBAtestgr1 aaa;
if(SUCCEEDED(aaa.OpenDataSource()))
{
CDBPropSet propset(DBPROPSET_ROWSET);
CDBAtestgr1 bbb;
bbb.GetRowsetProperties(&propset);
bbb.m_x=5;
bbb.m_y=6;
hr=bbb.Insert();
hr=bbb.Update ();


}

CoUninitialize();
...
...
...
На строке hr=bbb.Insert() выдаётся ошибка E_NOINTERFACE.
Заранее большое спасибо!!!
GeorgeSoca
Сообщения: 95
Зарегистрирован: 12 окт 2015, 04:09
Откуда: Guam
Контактная информация:

На нашем сайте вы можете чувствовать себя в безопасности! Кроме того, мы используем зеркальные жесткие диски на все наши серверы, поэтому мы также взять резервную два раза в день на отдельных серверах. Мы используем ISPmanager, как на панели управления. ISPmanager является панель управления, которая позволяет легко управлять своей веб-сайт. С нами вы можете разместить столько веб-сайты и домены, которые вы хотите для учетной записи хостинга.
virtual hosting
Ответить