想在程序里动态的设定ado控件的数据源,在添加ado控件的时候什么属性都没有手工设置,在程序里用了语句:
m_adoc.SetConnectionString("Provider=SQLOLEDB.1;Persist Security Info=False;");
//"Provider=SQLOLEDB.1;User ID=qqq;Password=qqq;Initial Catalog=qqq;Data Source=qq;也不行
m_adoc.SetCommandType(1);
m_adoc.SetUserName("gg");
m_adoc.SetPassword("ggg");
str="SELECT * FROM gg表 ";
m_adoc.SetRecordSource(str);
m_adoc.Refresh();
可是datagrid根本没有反应,(连表的各列也不显示,说明根本没有在查询)
但是用
str=m_adoc.GetConnectionString();
str=m_adoc.GetRecordSource();
看到ado控件的属性已经通过程序设置成功了 datagrid已经手动的绑定到这个adoc控件上了,手动设置adoc控件各属性显示没有问题。
是不是还需要在程序里设置什么东西呢?
请教各位了。
m_adoc.SetConnectionString("Provider=SQLOLEDB.1;Persist Security Info=False;");
//"Provider=SQLOLEDB.1;User ID=qqq;Password=qqq;Initial Catalog=qqq;Data Source=qq;也不行
m_adoc.SetCommandType(1);
m_adoc.SetUserName("gg");
m_adoc.SetPassword("ggg");
str="SELECT * FROM gg表 ";
m_adoc.SetRecordSource(str);
m_adoc.Refresh();
可是datagrid根本没有反应,(连表的各列也不显示,说明根本没有在查询)
但是用
str=m_adoc.GetConnectionString();
str=m_adoc.GetRecordSource();
看到ado控件的属性已经通过程序设置成功了 datagrid已经手动的绑定到这个adoc控件上了,手动设置adoc控件各属性显示没有问题。
是不是还需要在程序里设置什么东西呢?
请教各位了。
解决方案 »
- 想做个吸附窗口的东西,怎么做?
- CListCtrl类里怎么显示我得到的实时数据
- debug和release都正常,双击或者cmd执行却出错,可能是什么原因?
- CopyFileEx 函数的回调频率可否调整?
- 高手帮看下这个函数
- 请教:有关鼠标操作的简单问题.(win32 API)
- 关于图像编程!!!
- 本人刚接触c语言做程序时出现了这些错误,并求每个错误意思正解以及解决方案,下面的是我的不完整的程序源代码求解
- 怎么在Controls中加新控件,例如ListView控件??
- ring3下无hook进程守护
- 为什么 new 自定义类,也会提示不能实例化抽象类??可能是什么问题??
- 怎样实现:如果我的应用程序不在激活状态,怎样在它收到一条消息后在任务栏上闪烁,就像MSN收到一条消息后在任务栏闪烁一样
_RecordsetPtr rs; //recordset object
_ConnectionPtr conn; //connection object
_variant_t vra;
VARIANT *vt1 = NULL;
try
{
//create instance of Command, Connection and Recordset.
cmd.CreateInstance( __uuidof(Command));
rs.CreateInstance(__uuidof(Recordset));
conn.CreateInstance(__uuidof(Connection));
// used for RXF_text data exchange
UpdateData(TRUE);
conn->CursorLocation = adUseClient;
//Get connection string from edit control and open connection
conn->Open(_bstr_t( m_strConnect.GetBuffer(0) ), L"", L"", -1);
//Assign oppened connection object to Command object
cmd->ActiveConnection = conn;
//Get query text from edit control
cmd->CommandText = (_bstr_t) m_strQuery.GetBuffer(0);
cmd->CommandType = adCmdText;
//execute the command and assign returning Recordset to previously
//instanciated recordset object
rs = cmd->Execute(&vra,vt1, adCmdText);
} //Error catching
catch (_com_error &e)
{
GenerateError(e.Error(), e.Description());
}
catch (...)
{
} //casting to LPUNKNOWN is important so it will query interface Recordset object
//for IUnknown
m_myDataGrid.SetRefDataSource( (LPUNKNOWN) rs );
m_myDataGrid.Refresh();
UpdateData(FALSE);
如在你那不好用的话,请留下你的Email我给你发一个小demo