请问vc中能否不创建数据源就连接数据库呀?象vb那样 请问vc中能否不创建数据源就连接数据库呀?象vb那样 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 怎么做呢是继承一个CRecordSet么? #import <msado15.dll> no_namespace no_implementation_ConnectionPtr spConn;_CommandPtr spCmd;_RecordsetPtr spRs; int main(int argc, char* argv[]){ printf("Use ADO to open ..\\addrbook.mdb database file!\n"); CoInitialize(NULL); try { _ConnectionPtr pConn("ADODB.Connection"); _RecordsetPtr pRst("ADODB.Recordset"); pConn->Open("PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=..\\addrbook.mdb;UID=;PWD=;" ,"","",adConnectUnspecified); pRst->Open("家庭成员", _variant_t((IDispatch *) pConn, true), adOpenStatic, adLockPessimistic, adCmdTable); FieldsPtr fds=pRst->GetFields(); printf("printf field name of the table\n"); for(int i = 0;i < fds->GetCount(); i++) { FieldPtr fd = fds->GetItem(_variant_t(short(i))); printf("%s ",(LPCTSTR)fd->GetName()); } printf("\n"); pRst->MoveFirst (); for(i = 0;i < pRst->GetRecordCount() ; i++) { printf("Record is '%s %s %s'\n", (char*) ((_bstr_t) pRst->GetFields()->GetItem("姓氏")->GetValue()), (char*) ((_bstr_t) pRst->Fields->Item["名字"]->Value), (char*) ((_bstr_t) pRst->Fields->Item["角色"]->Value)); pRst->MoveNext (); } _ConnectPtr cn;CString strSql;strSql = "{DRIVER={SQL SERVER};SERVER=myserver;SA=sa;PWD=pwd;DATABASE=mydb";cn.open((_bstr_t)strSql,"","",0); 使用datalink,msdn中的dbviewer和dbfetch都是这样的例子,也就是动态打开数据库,这是可以的! 为什么Debug以后运行结果不执行界面新改动 请问关于ado数据库操作的问题 请教一个函数 求资料,请推荐。 如何制作类似于leapFtp的界面? 最简单的问题 我在子窗口的OnCreate()里给MDI下的子窗口用SetWindowText("标题名.."),为什么没反应? FindWindow的问题 如何设置CLISTCTRL中的CHEADERCTRL的列宽能显示指定字符串 请问类的静态成员函数中怎么使用成员变量和成员函数? 一个多线程的入门级程序遇到的问题。调用CreateThread程序出现异常。 移动工作的达人或是面世过移动的进!
是继承一个CRecordSet么?
_CommandPtr spCmd;
_RecordsetPtr spRs;
{
printf("Use ADO to open ..\\addrbook.mdb database file!\n");
CoInitialize(NULL);
try
{
_ConnectionPtr pConn("ADODB.Connection");
_RecordsetPtr pRst("ADODB.Recordset");
pConn->Open("PROVIDER=MSDASQL;DRIVER={Microsoft Access Driver (*.mdb)};DBQ=..\\addrbook.mdb;UID=;PWD=;"
,"","",adConnectUnspecified);
pRst->Open("家庭成员", _variant_t((IDispatch *) pConn, true),
adOpenStatic, adLockPessimistic, adCmdTable);
FieldsPtr fds=pRst->GetFields();
printf("printf field name of the table\n");
for(int i = 0;i < fds->GetCount(); i++)
{
FieldPtr fd = fds->GetItem(_variant_t(short(i)));
printf("%s ",(LPCTSTR)fd->GetName()); }
printf("\n");
pRst->MoveFirst ();
for(i = 0;i < pRst->GetRecordCount() ; i++)
{
printf("Record is '%s %s %s'\n",
(char*) ((_bstr_t) pRst->GetFields()->GetItem("姓氏")->GetValue()),
(char*) ((_bstr_t) pRst->Fields->Item["名字"]->Value),
(char*) ((_bstr_t) pRst->Fields->Item["角色"]->Value));
pRst->MoveNext ();
}
CString strSql;
strSql = "{DRIVER={SQL SERVER};SERVER=myserver;SA=sa;PWD=pwd;DATABASE=mydb";
cn.open((_bstr_t)strSql,"","",0);