MySQL 是一个关系型数据库管理系统,它使用 SQL(结构化查询语言)进行数据操作。在 MySQL 中,数据通常存储在表中,而表则存储在数据库中。当提到“多个文件自动入库”时,通常指的是将多个外部文件(如 CSV、Excel 等)的数据批量导入到 MySQL 数据库中。
原因:通常是由于文件编码与 MySQL 数据库编码不匹配导致的。
解决方法:
LOAD DATA INFILE
命令时,可以指定文件的编码格式,如 CHARACTER SET utf8
。LOAD DATA INFILE 'path/to/file.csv'
INTO TABLE table_name
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
CHARACTER SET utf8;
原因:可能是由于 Excel 文件中的数据格式与 MySQL 表结构不匹配,或者文件损坏。
解决方法:
phpMyAdmin
或 MySQL Workbench
)将 Excel 文件转换为 CSV 格式,然后再导入。解决方法:
LOAD DATA INFILE
命令结合循环语句,逐个导入文件。import mysql.connector
# 连接到 MySQL 数据库
db = mysql.connector.connect(
host="localhost",
user="username",
password="password",
database="database_name"
)
cursor = db.cursor()
# 文件路径列表
file_paths = ['path/to/file1.csv', 'path/to/file2.csv', 'path/to/file3.csv']
for file_path in file_paths:
sql = f"""
LOAD DATA INFILE '{file_path}'
INTO TABLE table_name
FIELDS TERMINATED BY ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
CHARACTER SET utf8;
"""
cursor.execute(sql)
# 提交更改并关闭连接
db.commit()
cursor.close()
db.close()
通过以上方法,你可以高效地将多个文件的数据自动导入到 MySQL 数据库中,并解决常见的导入问题。
618音视频通信直播系列
企业创新在线学堂
企业创新在线学堂
云+社区沙龙online [技术应变力]
DB TALK 技术分享会
云+社区技术沙龙[第17期]
腾讯云数据库TDSQL训练营
Techo Day 第三期
腾讯云数据库TDSQL训练营
云+社区技术沙龙[第20期]
DB・洞见
领取专属 10元无门槛券
手把手带您无忧上云