我是新手,请问ADO Recordset的OPEN()函数的第一个参数是什么?比如下面的代码:
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open("SELECT * FROM users",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);为什么这里用一个查询语句,而不直接用表名,改成m_pRecordset->Open("users",_variant_t((IDispatch*)为什么不可以?不是说第一个参数可以用表名吗?谢谢
m_pRecordset.CreateInstance("ADODB.Recordset");
m_pRecordset->Open("SELECT * FROM users",_variant_t((IDispatch*)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);为什么这里用一个查询语句,而不直接用表名,改成m_pRecordset->Open("users",_variant_t((IDispatch*)为什么不可以?不是说第一个参数可以用表名吗?谢谢
解决方案 »
- sqlserver 插入access 优化
- SQL SERVER2000服务管理器中,服务器(v):LBDZ-02201407\SAMPLE,请问SAMPLE是什么?是在哪里定义的?
- 关于Access 问题。UPDATE 语句的语法错误。
- 问导师不如上CSDN,救急,两个表,触发器更新的问题
- delphi ADO 连接 sql server 和oracle 备份数据库时候 提示 Timeout expir..
- 用sp_rename更改列名时,sql server 自动生成脚本为什么要分两次完成?
- INSTEAD OF 触发器 问题
- 请教关于触发器临时表INSERT,DELETE的一个问题
- function返回table类型的问题
- sql存储过程
- 请教这两个sql语句还一样啊
- 自连接的问题
或者说,你是以什么方式打开连接的?
或者说,你用的什么驱动方式?
oledb连接不支持使用表名. odbc可以.
比如
oledb
Provider=SQLOLEDB;Server=(local);uid=sa;pwd=x;database=test;
odbc
Driver={SQL Server};Server=(local);uid=sa;pwd=x;database=test;
hr = m_pConnection->Open("Provider=OraOLEDB.Oracle;Data Source=XXXX;User ID=XXXX;Password=XXXX;","","",adModeUnknown);
如果只能使用查询语句做参数,那是不是意味着每次连接都要使用一次查询,如果记录很多,而且频繁调用这个语句会不会影响性能?谢谢
用表名,或是用查询语句,只要recordset对象是重新打开,都会重建记录集.
2,oracle可以试试
"Driver={microsoft odbc for oracle};server=ip;uid=xx;pwd=xx;"