如何解决LOAD DATA INFILE问题

时间:2010-11-12 18:38:30

标签: sql ms-access coldfusion

当我尝试使用这个sql语句时:

LOAD DATA INFILE 'url/file.txt'
IGNORE
INTO TABLE myTbl
FIELDS TERMINATED BY '|'
LINES TERMINATED BY '\n'
(SPEC, PERSON, BLAH, BLUH)

我收到此错误:无效的SQL语句;预期'DELETE','INSERT','PROCEDURE','SELECT'或'UPDATE'。我试图插入访问数据库。关于如何让这个LOAD DATA INFILE工作的任何线索?

我的BULK INSERT尝试也会出现同样的错误

3 个答案:

答案 0 :(得分:2)

Load Data infile是一个仅限mysql的sql命令, 对于ms access db,您可以使用vpa将文本文件导入表

看看这里: http://support.microsoft.com/kb/113905

答案 1 :(得分:1)

这些是MySQL的命令。您无法在访问中使用它们。

答案 2 :(得分:1)

(正如评论中已经提到的那样,这是一个特定于MySQL的命令。所以MS Access不会理解它。)

MS Access是桌面数据库。因此,它的工具不如企业数据库那么强大。它支持使用IN external database动态读取csv文件。但我相信只能使用.csv(以及可能是制表符分隔)文件。对于其他格式,您需要使用schema.ini文件。

http://office.microsoft.com/en-us/access-help/select-statement-HP001032265.aspx

INSERT INTO OtherTable ( Columns )
SELECT  Columns...
FROM    tableexpression [, ...] [IN externaldatabase]

除了执行INSERT之外(逐行),这是我知道MS Access的唯一选择。