zoukankan      html  css  js  c++  java
  • DELPHI TADOQuery 和Excel 相关

    1. 使用程序生成的Excel文件,出现"格式不对的'错误。通过Excel程序再存下盘就OK了。
    2. Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=c:\ee.xlsx;Mode=Share Deny None;Extended Properties=Excel 8.0;Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=35;Jet OLEDB:Database Locking Mode=0;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System Database=False;Jet OLEDB:Encrypt Database=False;Jet OLEDB:Don't Copy Locale on Compact=False;Jet OLEDB:Compact Without Replica Repair=False;Jet OLEDB:SFP=False;Jet OLEDB:HDR=NO
    3. 不正常地定义参数对象提供了不一致或不完整的信息"的解决办法,TADOQUERY.ParamCheck:=False; OK!

      Excel文件select * from [Sheet2$A3:E6]不区分大小写 OK!

      原因:在delphi用AdoQuery执行SQL语句时TADOQuery对象会把SQL语句中":"后的字符当作变量来使用,导致数据识别错误,因此只要将这种检查取消掉就可以了,在TADOQuery属性中正好ParamCheck就是设置检查的关键所在,设为False,这样它就可以跳过检查直接执行SQL语句。

    4. Delphi测试,

    SQL语句的构造如下,[Sheet1$a1:e4] a a.id a.flowid

    表名:[Sheet1$a1:e4] [Sheet1$] [MyNamedRange]

    别名:a

    列:a.id a.flowid

     

    对 Excel 工作簿中表(或范围)的有效引用。
    若要引用完全使用的工作表的范围,请指定后面跟有美元符号的工作表名称。例如:

    select * from [Sheet1$]
    若要引用工作表上的特定地址范围,请指定后面跟有美元符号和该范围的工作表名称。例如:

    select * from [Sheet1$A1:B10]
    若要引用指定的范围,请使用该范围的名称。例如:

    select * from [MyNamedRange]

    说明:
    可以引用Excel 工作簿中的三种对象:
    • 整张工作表:[Sheet1$]  ,Sheet1 就是工作表的名称
    • 工作表上的命名单元格区域:[MyNamedRange] (不需要指定工作表,因为整个xls中命名区域只能唯一)
    XLS命名方法:选中单元格范围》插入》名称》定义
    • 工作表上的未命名单元格区域 :[Sheet1$A1:B10]
    (在关系数据库提供的各种对象中(表、视图、存储过程等),Excel 数据源仅提供相当于表的对象,它由指定工作簿中的工作表和定义的命名区域组成。命名区域被视为"表",而工作表被视为"系统表")

       

    注意:
    •必须使用[](方括号),否将报:
    FROM 子句语法错误
    •必须跟$(美元符号),否则报:
    Microsoft Jet 数据库引擎找不到对象'Sheet2'。请确定对象是否存在,并正确地写出它的名称和路径。
    •如果工作表名称不对,或者不存在,将报:
    'Sheet2$' 不是一个有效名称。请确认它不包含无效的字符或标点,且名称不太长。

  • 相关阅读:
    C#不引用IWshRuntimeLibrary获取快捷方式目标位置
    chrome插件
    禁用右键菜单
    自定义创建右键菜单项目
    Win10怀旧--win7体验
    Win10隐藏托盘图标-注册表
    一些软件下载地址
    Win10锁屏与关机相关设置-注册表
    Winform开发中的窗体重复及灵活切换问题
    Winform开发中如何将数据库字段绑定到ComboBox控件
  • 原文地址:https://www.cnblogs.com/xyicheng/p/1685942.html
Copyright © 2011-2022 走看看