使用SQLite的IMPORT命令导入CSV时出现语法错误求助
解决CSV导入语法错误的方案
导致near "IMPORT": syntax error的核心原因是:你使用的IMPORT命令并非当前数据库支持的标准导入语法,不同数据库的CSV导入命令差异很大,以下是主流数据库的正确操作方式:
SQLite
SQLite不支持IMPORT语句,需使用内置的.import指令,步骤如下:
- 切换到CSV模式:
.mode csv
- 执行导入(Windows路径可用正斜杠或双反斜杠):
.import 'E:/code playground/csv files/research.csv' mytable
PostgreSQL
使用COPY命令完成导入:
COPY mytable FROM 'E:/code playground/csv files/research.csv' WITH (FORMAT csv, HEADER);
注:若导入本地文件,需确保PostgreSQL服务进程有权限访问该路径;也可借助客户端工具的本地导入功能绕开权限限制。
MySQL/MariaDB
使用LOAD DATA INFILE命令:
LOAD DATA INFILE 'E:/code playground/csv files/research.csv' INTO TABLE mytable FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY '\n' IGNORE 1 ROWS; -- 若CSV包含表头行则添加此句
注:MySQL默认禁用本地文件导入,需先开启local_infile参数。
SQL Server
使用BULK INSERT命令:
BULK INSERT mytable FROM 'E:\code playground\csv files\research.csv' WITH ( FIELDTERMINATOR = ',', ROWTERMINATOR = '\n', FIRSTROW = 2 -- 跳过表头行 );
内容的提问来源于stack exchange,提问作者codepro
相关产品推荐
相关产品推荐

