检查Excel数据格式
user_id
、order_date
。YYYY-MM-DD
或YYYY-MM-DD HH:MM:SS
,避免导入后格式错误。保存为CSV文件
CSV(逗号分隔)
,该格式兼容性强,适合数据库导入。创建目标数据表
CREATE TABLE sales_data ( id INT PRIMARY KEY AUTO_INCREMENT, product_name VARCHAR(100), quantity INT, sale_date DATE );
检查权限与配置
FILE
权限)。secure_file_priv
配置路径(通过命令SHOW VARIABLES LIKE 'secure_file_priv';
),将CSV文件存放至该路径。LOAD DATA INFILE '/var/lib/mysql-files/sales_data.csv' INTO TABLE sales_data FIELDS TERMINATED BY ',' ENCLOSED BY '"' LINES TERMINATED BY 'n' IGNORE 1 ROWS; -- 跳过CSV首行标题
SELECT * FROM sales_data LIMIT 10;
SELECT COUNT(*) FROM sales_data;
对比Excel行数(排除标题行)。
问题类型 | 可能原因 | 解决方法 |
---|---|---|
导入报错“权限不足” | 用户无FILE 权限 | 使用GRANT FILE ON *.* TO 'user'@'localhost'; 授权 |
中文乱码 | 文件编码不匹配 | 将CSV保存为UTF-8 格式,数据库字符集设为utf8mb4 |
日期格式错误 | Excel与MySQL格式不一致 | 提前在Excel中格式化日期列 |
mysqlimport
)。参考资料