数据|数据库使用ADO数据技术.
编写服务器端数据处理COM组件,将其配置成DCOM服务.
在客户端编写客户程序,向DCOM服务器组件要求获取,修改数据.
直接传送SQL语句,让服务端执行.要传回的数据直接从_RecordsetPtr无连接传回,
如:
STDMETHODIMP CDataServer::FetchRecordsetData(BSTR bstrQuerySQL, IDispatch **pResultRecordSet)
{
if(m_pMainConnection == NULL)
return E_POINTER;
try
{
_RecordsetPtr pRecordset;
pRecordset.CreateInstance (__uuidof(Recordset));
pRecordset->Open (bstrQuerySQL, (IDispatch*)m_pMainConnection, adOpenStatic, adLockOptimistic, adCmdText);
pRecordset->putref_ActiveConnection (NULL);
*pResultRecordSet = (IDispatch*)pRecordset.Detach ();
}
catch(_com_error e)
{
return e.Error ();
}
return S_OK;
//OK
}
编码很简单,但DCOM的配置相当复杂,特别是跨域时涉及安全性问题.
关于Dcom数据库的三层原理片断
80酷酷网 80kuku.com