读写mysql库
- 创建一个连接对象
- host mysql服务器都中
- port 数字类型 端口
- user 用户名
- passwd 密码
- db 数据库名
- charset 连接编码,需要显式指明编码方式
- 获取游标
游标(cursor)是一个游动的标识,可以理解成一条sql去除对应N调结果资源的接口/句柄,就是游标,沿着游标可以一次取出一行
- execute() 执行一个数据库查询和命令
- fetchone() 取得结果集下一行
- fetchmany(size) 取得结果集size行
- fetchall() 取得结果集所有行
- close() 关闭cursor
import pymysql # python3.x版本中用于连接MySQL服务器的一个库
import pandas an pd
conn = pymysql.connect(host='localhost', port='3000', user='root', passwd='666666', db='mysql', charset='utf8') # 创建一个连接对象,打开数据库连接
cursor = conn.cursor() #获取游标
sql = """ SELECT *
from mysql.test1 """ #创建一个字符串语句
cursor.execute(sql)
data1 = cursor.fetchall() #取所有
data2 = cursor.fetchmany(2) # 取两个
data3 = cursor.fetchone() # 取一行
df1 = pd.DataFrame(list(data1), colums=['id', 'col1', 'col2'])
传参
import pymysql
import pandas an pd
conn = pymysql.connect(host='localhost', port='3000', user='root', passwd='666666', db='mysql', charset='utf8')
cursor = conn.cursor()
num0=6
num1=8
sql = """ SELECT *
from mysql.test1
where col2 >= {0}
and col2 <= {1}""".format(num0, num1)
cursor.execute(sql)
data2 = cursor.fetchmany(2)
df1 = pd.DataFrame(list(data2), colums=['id', 'col1', 'col2'])