|
|
导航: |
论坛 -> 数据库专区
斑竹:liumazi,waterstone |
|
作者: |
|
2021/5/13 18:01:38 |
标题: |
使用 ADO 导入 csv 文件的奇怪问题 |
浏览:1683 |
|
加入我的收藏 |
楼主: |
D10.3.3
使用 ADO 来导入 csv 文件,连接字符串如下:
Provider=MSDASQL.1;Persist Security Info=False;Extended Properties="Driver={Microsoft Text Driver (*.txt; *.csv)};DriverId=27;FIL=text;MaxBufferSize=2048;MaxScanRows=8;PageTimeout=5;SafeTransaction_s=0;Threads=3;UID=admin;UserCommitSync=Yes;"
使用 TADOTable,指定: ADOTable1.TableName := OpenDialog1.FileName;
然后,执行 ADOTable1.Open;
在 WIN7 机器上成功; 在我自己的 WIN10 笔记本上成功; 在另外一台 WIN10 电脑上,出现异常提示:[Microsoft][ODBC 文本 驱动程序] FROM 子句语法错误
仔细对比两台 WIN10 电脑的 ODBC 驱动,其中:
Microsoft Text Driver(*.txt; *.csv) 的版本号,都是:10.00.19041.01
把 TADOTable 换成 TADOQuery,也是同样的错误提示。
因为在2台电脑上能够执行成功,在一台电脑上执行失败,但相关的 ODBC Driver 版本又相同,所以百思不得其解了。
请各位大侠指教。
----------------------------------------------
- |
作者: |
|
2021/5/13 18:26:31 |
1楼: |
DriverId=27 啥意思,为啥是 27 还有其他好多奇怪的参数。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2021/5/14 11:37:15 |
2楼: |
整个字符串是使用 Delphi 的 ADO 的自动创建连接字符串的菜单过程创建的。那个 id=27 我试过删除掉,不影响正常工作,也不会导致出问题的机器问题消失。
----------------------------------------------
-
|
作者: |
|
2021/5/14 21:37:40 |
3楼: |
你都用CSV了,自己解析最好了。M$的驱动经常出现各种奇怪的问题,可能找原因的时间自己都写完了。 ^o^
----------------------------------------------
-广袤璀璨的银河,永无止境的梦想(梦无止境游银河) 博客挂了……
|
作者: |
|
2021/5/15 11:12:51 |
4楼: |
楼上你说的有道理。
网上搜了一下,中文没讲什么,stack overflow 上有人讲,WIN 自己的 ODBC 驱动有 BUG,DELPHI 的 ADO 也有BUG。
----------------------------------------------
-
|
|