Python基础篇——mysql数据库连接
“Life is short,you need Python”
工具准备:
1.mysql数据库准备
2.nvicat准备,在进行连接mysql数据库时,我们首先要下载nvicat,nvicat是一个一套快速可靠的数据库管理工具。
3.pycharm编译器准备
一:读写mysql数据库
1.创建一个连接对象
host mysql服务器地址
port 数字类型端口
user 用户名
passwd 密码
db 数据库名称
charset 连接编码,需要显示指明编码的方式
2.获取游标
游标是什么呢?
简单来说:游标(coursor)是一个游动的标识,可以理解成一条sql语句对应n条结果资源的接口/句柄,沿着游标可以一次取出一行(类似于增删改查操作)。
execute()执行一个数据库查询和命令
fetchone()取得结果集下一行
fetchmany(size)取得结果集size行
fetchall()取得结果集所有行
close()关闭cursor
代码示例:
import pymysql #pymysql 是在python3版本中用于连接mysql服务器的一个库
import pandas as pd
#创建一个连接对象,打开数据库进行连接
conn = pymysql.connect(host='localhost',port=3306,user='root',
passwd='123',db='mysql',charset='utf8')
cursor = conn.cursor() #获取游标
sql = """SELECT *
from mysql.test1""" #创建一个字符串语句,使用三个双引号字符串支持换行,test是已经在mysql数据库中创建的一个表
cursor.execute(sql)
data1 = cursor.fetchall()
#data2 = cursor.fetchmany(2)
#data3 = cursor.fetchone()
df = pd.DataFrame(list(data1),columns=['id','col1','col2']) #Dataframe其实就是一个数据框
二:通过ssh连接数据mysql数据库
代码示例:
import pymysql
import pandas as pd
from sshtunnel import SSHTunnelForwarder
with SSHTunnelForwarder(
#配置ssh连接
ssh_adress_or_host = ('127.16.59.13',int('20222')) #制定ssh登录的adress
ssh_password = '密码'
ssh_username = '用户名'
local_bind_adress = ('127.0.0.1',int(2222)) #映射到本机的地址和端口,这里必须是127.0.0.1
remote_bind_adress = ('mysql服务器地址',int('端口号'))) as sever: #mysql服务器的配置,有数据的复制
conn = pymysql.connect(host='127.0.0.1',port=2222,user='mysql服务器用户名',password='mysql服务器密码')
cursor = conn.cursor() #获取游标
一些细节并没有展示出来,还希望各位小伙伴们积极探索呀!
有任何问题都可以私信小编呀!
微信公众号:python代码驿站
欢迎大家关注呀