 
         
         
        
            全文预览已结束            
        
        下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
            利用ADO操作Excel文件 今天花时间研究了一下ADO操作Excel文件的问题,跟大家分享一下:首先利用Excel2003创建了一个名为Demo.xls的文件,内容如下:NameAgeTY12TZL15然后打开VC,创建一个命令行应用程序。然后如一般的ADO程序一样编写相应代码,只是注意打开数据库的代码如下写:m_pConnection-Open(Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Demo.xls;Extended Properties=/Excel 8.0;HDR=No;IMEX=1/,adModeUnknown);注意一下HDR,如果后面是No的话,表示ADO将不把你Excel文件的第一行作为字段名(此时使用默认字段名:F1,F2。以此类推,当然也可以用(LPCTSTR)m_pRecordset-GetFields()-GetItem(_variant_t)zz)-Name之类的代码来获得相应的字段名)。否则如上Excel文件的字段名将是Name与Age。另外是IMEX,如果设置了IMEX=1; 则通知驱动程序始终将“互混”(数字,日期,字符串等)数据列作为文本读取,同时这个选项有可能影响到excel表格拒绝写操作,也就是说,如果我们要求写入excel的话,这个选项不能被设置。接下来是打开记录集,代码如下(注意一下表名的写法):m_pRecordset-Open(select * from Sheet1$,_variant_t(IDispatch*)m_pConnection,true),adOpenDynamic,adLockOptimistic,adCmdUnknown);知道了字段名,打开了数据库跟记录集,随后的操作就跟普通ADO的操作一样了:读取操作:while(!m_pRecordset-adoEOF)_variant_t var = m_pRecordset-GetCollect(Name);if(var.vt != VT_NULL)_bstr_t strName = (LPCSTR)_bstr_t(var);var = m_pRecordset-GetCollect(Age);if(var.vt != VT_NULL)_bstr_t strAge = (LPCSTR)_bstr_t(var);string strMid = strName + - + strAge;coutstrMid.c_str()MoveNext();插入操作:m_pRecordset-AddNew();m_pRecordset-PutCollect(Name,_variant_t(zz);m_pRecordset-PutCollect(Age,_variant_t(23);m_pRecordset-Update();更新操作:m_pRecordset-MoveFirst();m_pRecordset-PutCollect(Name,_variant_t(zz);m_pRecordset-Update();删除操作:不支持!这也是感到很遗憾的地方。好在我们可以通过执行 update Sheet1$ set Name=NULL, Age=NULL where Name=zz 之类的SQL语句来实现类似功能。当然,你要知道的是,这一行并没有真正删除掉,所以通常在select的时候要进行一定的筛选,例如:select * fromSheet1$ where Name is        
    温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 风电项目风险管理方案
- 高效充电技术研究与应用方案
- BIM技术在绿色建筑设计中的应用
- 佛山物理中考试题及答案
- 营销经理年终总结报告
- 土地开发中的滑坡防治方案
- 新能源汽车用高性能铝合金生产线项目风险评估报告
- 滑坡治理项目施工现场环境保护方案
- 舟山市中医院临床路径管理体系考核
- 漳州市中医院儿童心理疏导能力考核
- 急性左心衰竭
- 橄榄球规则介绍
- (完整)机械制造工艺学试题及答案
- 空间构成课件
- 司法鉴定机构质量管理体系文件范本
- 数字经济知识培训内容课件
- 2025年银行从业资格考试真题试卷:银行财务会计案例分析
- 2025年国家管网集团高校毕业生招聘945人正式启动笔试参考题库附带答案详解
- 分辨鞋子的左右课件
- GB/T 41304.5-2025知识管理方法和工具第5部分:组织知识管理成熟度评估
- 高空灯具安装施工方案
 
            
评论
0/150
提交评论