用CSV文件写入MySQL一步一步的指引(csv如何写mysql)
用CSV文件写入MySQL:一步一步的指引
CSV文件是一种非常常用的格式,它具有简单易用、易于编辑和低成本等优点,在很多情况下都是使用频率非常高的数据交换格式。MySQL是一种常用的关系型数据库管理系统,许多应用程序都需要将CSV文件中的数据写入到MySQL数据库中。为此,本文将介绍一些基本步骤和代码,帮助读者了解如何用CSV文件写入MySQL,并实现数据的有效导入。
步骤一:创建一个MySQL数据库和表
在开始之前,我们需要创建一个MySQL数据库和一个表,以便将CSV文件中的数据写入其中。在本文中,我们将使用以下的MySQL命令来创建一个名为mycsv的数据库和一个名为employees的表:
“`sql
CREATE DATABASE mycsv;
USE mycsv;
CREATE TABLE employees (
id INT(11) NOT NULL AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
age INT(11) NOT NULL,
eml VARCHAR(50) NOT NULL,
PRIMARY KEY (id)
);
上面的代码创建了一个ID列、一个姓名列、一个年龄列和一个电子邮件列的表。请注意,ID列是一个自动递增列,并且是主键。您可以根据需要更改列的名称和数据类型,以便适合您的CSV文件格式。
步骤二:编写Python程序来读取CSV文件
现在,我们需要编写一个Python程序来读取CSV文件。在本文中,我们将使用pandas和csv Python库来读取CSV文件。以下是一个示例程序:
```pythonimport pandas as pd
import csv
data = pd.read_csv('employees.csv')
print(data.head())
上面的代码将打印出CSV文件的前五行。请注意,’employees.csv’应为实际的CSV文件名称。如果文件位于不同的目录中,则需要指明完整路径。程序输出应如下所示:
id name age eml
0 1 John 30 john@example.com1 2 Amy 25 amy@example.com
2 3 Brad 35 brad@example.com3 4 Clre 28 clre@example.com
4 5 Daniel 31 daniel@example.com
步骤三:将CSV文件内容写入MySQL数据库
接下来,我们需要使用Python程序将CSV文件中的内容写入到MySQL数据库中。以下是一个示例程序:
“`python
import pandas as pd
import csv
import MySQLdb
data = pd.read_csv(’employees.csv’)
# 连接MySQL数据库
db = MySQLdb.connect(“localhost”,”root”,”password”,”mycsv” )
# 创建游标对象
cursor = db.cursor()
# 循环遍历CSV文件中的每一行,并将其插入到MySQL数据库中
for index, row in data.iterrows():
id=int(row[‘id’])
name=row[‘name’]
age=int(row[‘age’])
eml=row[’eml’]
sql = “INSERT INTO employees(id, name, age, eml) VALUES (%s, %s, %s, %s)”
val = (id, name, age, eml)
cursor.execute(sql, val)
# 提交事务
db.commit()
# 关闭数据库连接
db.close()
print(“数据导入成功!”)
注意将其中的'password'作为本地数据库root用户的密码进行替换。程序将通过MySQLdb库连接到MySQL数据库,然后循环遍历CSV文件中的每一行,并将其插入到MySQL数据库中。我们需要提交事务并关闭数据库连接。输出应如下所示:
数据导入成功!
总结
完成上述步骤后,我们已经学会了如何使用Python程序将CSV文件中的数据写入到MySQL数据库中。读者可以根据需要进行修改和扩展,以适应不同的数据格式和要求。这些基本步骤和代码将成为日后编写更加复杂和高效的程序的基础。