在Delphi中使用ADO直接訪問Excel數據文件

11 篇文章 0 订阅
3 篇文章 0 订阅

出處 : http://www.52delphi.com

要用DELPHI中的ADO系列控件訪問Excel數據文件,首先應該建立一些基本概念。你需要將一個Excel數據文件想像為一個關係數據庫,Excel文件中的每個工作表就對應該數據庫中的一個表,而工作表中的每一列當然就是表的列了。然後,按照下列面的秘訣進行就可以。

  1. 設置ADOConnection的ConnectionString
    構造ConnectionString時,OLE DB的提供者要選擇Microsoft Jet 4.0 OLE DB Provider作為ADO的驅動程序。這本來是用於連接Access數據庫的驅動程序,但也可打開Excel文件。
    連接的數據庫名稱當然就是你要打開的Excel文件,注意擴展名是*.xls,而不是*.mdb。
    最關鍵的一點是,還要設置擴展屬性Extended Properties為“Excel 8.0”,否則,測試連接時會報告無法識別數據格式的錯誤。 Extended Properties的屬性值在“所有”參數頁中輸入。
    最後,設置完成後的ConnectionString中的各項參數為:
      Provider=Microsoft.Jet.OLEDB.4.0
      Data Source=MyExcelFile.xls
      Extended Properties=Excel 8.0
      Persist Security Info=False
  2. 設置ADODataSet或ADOTable
    將ADODataSet或ADOTable連接到剛才的ADOConnection。如果不用ADOConnection,也可以參照上面的方法直接設置ADODataSet或ADOTable的ConnectionString屬性。
    對於ADODataSet,需要將CommandType屬性設置為cmdTableDirect,而對於ADOTable,則將TableDirect屬性設置為True。因為,訪問Excel文件是直接的數據文件訪問,不是通過SQL語句來操作游標訪問的。如果不設置直接訪問,則係統會報告SQL語句格式錯誤等信息。
    然後,當你下拉ADODataSet中的CommandText屬性或ADOTable的TableName屬性時,就可以選擇到要打開的工作表了。注意,表名後面多了加一個$符號。
  3. 打開ADODataSet或ADOTable

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值