pandas怎么样读取和写入mysql
时间: 2023-10-17 15:23:00 浏览: 79
读取MySQL:
1.安装pymysql
```
pip install pymysql
```
2.连接MySQL数据库
```
import pymysql
import pandas as pd
#连接MySQL数据库
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', port=3306)
#查询语句
sql = 'select * from student'
#读取数据
df = pd.read_sql(sql, conn)
#关闭连接
conn.close()
```
写入MySQL:
1.安装pymysql
```
pip install pymysql
```
2.连接MySQL数据库
```
import pymysql
import pandas as pd
#连接MySQL数据库
conn = pymysql.connect(host='localhost', user='root', password='123456', database='test', port=3306)
#写入数据
df.to_sql(name='student', con=conn, if_exists='replace', index=False)
#关闭连接
conn.close()
```
注:if_exists参数表示如果表已经存在,则替换原有表;index=False表示不保存索引列。
相关问题
pandas读取csv写入mysql
使用pandas库读取csv文件并将数据写入MySQL数据库的步骤如下:
1. 导入pandas库和MySQLdb库
```python
import pandas as pd
import MySQLdb
```
2. 读取csv文件
```python
data = pd.read_csv('data.csv')
```
3. 连接MySQL数据库
```python
conn = MySQLdb.connect(host='localhost', user='root', passwd='password', db='database_name', charset='utf8')
```
4. 创建游标对象
```python
cursor = conn.cursor()
```
5. 将数据写入MySQL数据库
```python
for index, row in data.iterrows():
sql = "INSERT INTO table_name (column1, column2, column3) VALUES (%s, %s, %s)"
cursor.execute(sql, (row['column1'], row['column2'], row['column3']))
```
6. 提交事务并关闭连接
```python
conn.commit()
cursor.close()
conn.close()
```
其中,`data.csv`是要读取的csv文件名,`host`、`user`、`passwd`、`db`分别是MySQL数据库的主机名、用户名、密码和数据库名,`table_name`是要写入的表名,`column1`、`column2`、`column3`是要写入的列名。在实际使用时,需要根据具体情况修改这些参数。
pandas读excel写入mysql
要使用`pandas`库将Excel文件中的数据写入MySQL数据库,您可以先使用`pandas`的`read_excel()`函数读取Excel文件,然后使用`pandas`的`to_sql()`函数将数据写入MySQL数据库表中。下面是一个简单的示例:
```python
import pandas as pd
from sqlalchemy import create_engine
# 连接到MySQL数据库
engine = create_engine('mysql://username:password@localhost/database_name')
# 读取Excel文件
df = pd.read_excel('example.xlsx')
# 将数据写入MySQL表中
df.to_sql('your_table_name', con=engine, if_exists='append', index=False)
```
在上面的示例中,您需要将`username`、`password`、`localhost`和`database_name`替换为您自己的MySQL连接信息。然后,我们使用`create_engine`函数创建一个MySQL引擎。接下来,我们使用`read_excel()`函数读取名为`example.xlsx`的Excel文件,并将其存储为一个`DataFrame`对象`df`。最后,我们使用`to_sql()`函数将`DataFrame`中的数据写入名为`your_table_name`的MySQL表中。设置参数`if_exists='append'`表示如果表已存在,则将数据追加到表中;设置参数`index=False`表示不将索引列写入MySQL表中。
请注意,您需要在使用此示例之前安装`pandas`和`SQLAlchemy`库,可以使用以下命令进行安装:
```
pip install pandas
pip install sqlalchemy
```
另外,请确保已经创建了适当的MySQL表,并将表名替换为`your_table_name`。
阅读全文