急求vc读取Excel错误有关问题
发布时间:2010-05-24 21:31:18 文章来源:www.iduyao.cn 采编人员:星星草
急求vc读取Excel异常问题
在网上找的代码,vc操作读取Excel文件,
CDatabase database;
CString sSql;
CString sItem1,sItem2,sItem3;
CString sDriver;
CString sDsn;
//CString sFile = "Demo.xls "; // 将被读取的Excel文件名
// 检索是否安装有Excel驱动 "Microsoft Excel Driver (*.xls) "
sDriver = GetExcelDriver();
if (sDriver.IsEmpty())
{
// 没有发现Excel驱动
AfxMessageBox( "没有安装Excel驱动! ");
return;
}
// 创建进行存取的字符串
sDsn.Format( "ODBC;DRIVER={%s};DSN='''';DBQ=%s ",sDriver,sFile);
TRY
{
// 打开数据库(既Excel文件)
database.Open(NULL, false, false, sDsn);
CRecordset recset(&database);
// 设置读取的查询语句.
//sSql = "select name,value from demo;";
sSql = "SELECT name, value "
"FROM demo "
"ORDER BY Name ";
// 执行查询语句
recset.Open(CRecordset::forwardOnly, sSql, CRecordset::readOnly); //??????????????????????
// 获取查询结果
while (!recset.IsEOF())
{
//读取Excel内部数值
recset.GetFieldValue( "name", sItem1);
recset.GetFieldValue( "value ", sItem2);
AfxMessageBox(sItem1);
AfxMessageBox(sItem2);
//recset.GetFieldValue( "部门 ", sItem3);
// 移到下一行
recset.MoveNext();
}
// 关闭数据库
database.Close();
AfxMessageBox("ok import");
}
CATCH(CDBException, e)
{
// 数据库操作产生异常时...
AfxMessageBox( "数据库错误: " + e-> m_strError);
}
END_CATCH;
总是有一句过不了啊:// 执行查询语句
recset.Open(CRecordset::forwardOnly, sSql, CRecordset::readOnly); //??????????????????????
不知道什么原因?
现在的异常是:Microsoft Jet 数据库引擎找不到对象'demo'。请确定对象是否存在,并正确地写出它的名
称和路径。
网上操作Excel都是这个代码,难道大家都能顺利通过吗?
------解决方案--------------------
select name,value from [sheet1$]
这儿是worksheet的名字,不是文件名。
------解决方案--------------------
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
怎么建接口将sqlite数据导入sqlsever数据库中
如题 最好有简单的办法 因为表项比较多 使用datatable巨费时
------解决方案-----...
-
弄过FairCom公司c-tree数据库的 进 高分
第一次接触这个数据库
有经验的 说说 如何浏览到表 及 记录
用开发工具 vb delp...
-
火鸟Firebird数据库 Error Message:
UPDATA语句后 产生的
Error Message:
----------------------------------------
Unsucce...
-
数据库访问路径的问题
web中JSP页面,使用jsp:useBean 访问不到表,但是在useBean的那个类中测试过可以连接。
是不是web中访问,数据...
-
sqlite里的增减删等操作sql语句在哪能得到?
我想从sqlite数据库中得到一些已经删除的数据,光拿到db文件还不够。请问sqlite有没有专...
-
怎么查询一个表中最值和最值对应的时间
在表T1中
tag value date_time
"A" 5 "2011-02-04 11:12:52"
"A" 9 "2011-...
-
sqllite可以处理多大数据量?
有一份数据,数据量大概一千万到一千五百万行之间
要放进一个表里进行分析,听说sqllite很方便,不知道用它...
-
mongo SyntaxError
> SELECT * FROM things WHERE name="mongo";
Tue Dec 20 17:45:42 SyntaxError: missing ; before statement...
-
sqlite读取datetime类型报错
1 2011/1/23 12:32:12 2011/9/8 5:00:00 df 2
添加时间是手动选择的,数据库没报错,但读取却报字符...
-
哪个有PI OLEDB Provider的安装包通向一下啊(顶者有分)
急需PI OLEDB Provider的安装包,在线等
请各位多多帮忙啊,谢谢
------解决...