介绍两种方法
一、使用pymysql创建连接
首先要安装pymysql包
- 第一步,创建连接
import pymysql
conn = pymysql.connect(
host = 'localhost',
user='root',
password='xxxx',
db='selecttest',
port=3306,
)
其中,user表示用户名,password表示密码,db表示要使用的数据,port表示端口。
- 第二步,创建游标
cur=conn.cursor()
- 第三步,通过游标执行sql语句并调取数据
cur.execute('select * from student')
data = cur.fetchall()
data返回一个多维元组
- 注意:使用完要关闭游标和链接
cur.close()
conn.close()
二、使用pandas包调用
-第一步
导入相关包,并创建engine
import pandas as pd
from sqlalchemy import create_engine
engine = create_engine('mysql+pymysql://root:19981005@localhost:3306/selecttest')
记下创建engine的固定格式
- 第二步,写sql语句,并使用read_sql建立链接
sql = 'select * from student'
pd.read_sql(sql, engine)
最终结果返回DataFrame数组
三、写入数据库
- pd.to_sql(name, con, if_exists, index)
name是df, con是之前写好的连接器engine,if_exists='append'表示若不存在就不创建,若存在则插入,index=False表示不写入默认的索引
注意如果将新表写入数据库,可能会出现数据类型和数据库类型不一致的情况,建议先在sql中建表,定义数据类型,再加入数据。