将指定csv文件读入MySql数据库中的代码函数
时间: 2024-03-20 12:41:01 浏览: 59
下面是将指定csv文件读入MySql数据库中的Python代码函数:
```python
import pandas as pd
import mysql.connector
def csv_to_mysql(csv_file, table_name, host, user, password, database):
# 读取CSV文件
data = pd.read_csv(csv_file)
# 连接MySQL数据库
cnx = mysql.connector.connect(
host=host,
user=user,
password=password,
database=database
)
# 创建MySQL表
cursor = cnx.cursor()
cursor.execute(f"DROP TABLE IF EXISTS {table_name}")
cursor.execute(f"CREATE TABLE {table_name} ({' VARCHAR(255), '.join(data.columns)} VARCHAR(255))")
# 将数据导入MySQL表
for row in data.itertuples():
sql = f"INSERT INTO {table_name} ({', '.join(data.columns)}) VALUES ({', '.join(['%s']*len(data.columns))})"
cursor.execute(sql, tuple(row[1:]))
# 提交更改并关闭连接
cnx.commit()
cursor.close()
cnx.close()
# 调用函数示例
csv_to_mysql('data.csv', 'my_table', 'localhost', 'root', 'password', 'my_database')
```
这个函数会读取名为 `data.csv` 的csv文件,并将其导入名为 `my_table` 的MySQL表中。你需要将 `host`,`user`,`password` 和 `database` 参数替换为你的MySQL数据库的实际值。
阅读全文