python 将CSV数据导入mysql
时间: 2024-08-17 07:02:49 浏览: 60
Python将CSV数据导入MySQL通常涉及几个步骤,使用的是pandas库处理CSV文件,然后通过连接数据库,如`pymysql`或`mysql-connector-python`,将数据插入到表中。以下是基本流程:
1. **安装所需库**:首先确保已经安装了pandas、csv以及用于数据库操作的库(例如`pymysql`)。
```bash
pip install pandas mysql-connector-python
```
2. **读取CSV数据**:使用pandas的`read_csv()`函数加载CSV文件内容。
```python
import pandas as pd
data = pd.read_csv('your_file.csv')
```
3. **连接MySQL服务器**:使用`pymysql.connect()`创建数据库连接。
```python
import pymysql
db_config = {
'host': 'your_host',
'user': 'your_username',
'password': 'your_password',
'database': 'your_database'
}
# 创建连接
conn = pymysql.connect(**db_config)
```
4. **创建游标并执行SQL**:使用连接创建游标,并创建一个适当的插入语句(假设有一个名为`table_name`的表与CSV结构匹配),然后遍历DataFrame逐行插入数据。
```python
cursor = conn.cursor()
sql = "INSERT INTO table_name (column1, column2, ...) VALUES (%s, %s, ...)"
for index, row in data.iterrows():
values = tuple(row)
cursor.execute(sql, values)
# 提交事务以保存更改
conn.commit()
```
5. **关闭连接**:完成数据插入后记得关闭游标和连接。
```python
cursor.close()
conn.close()
```
阅读全文