pymysql的使用教程

pymysql的使用教程

使用之前,需要

pip install pymysql

一、大致框架

import pymysql

# 1、连接
conn = pymysql.connect(host = "数据库地址:127.0.0.1",
user = '用户名:root',
passwd = "密码",
port = 3306,
db = '数据库名',
charset = "utf8"
)

# 2、生成游标
cur = conn.cursor()

# 3、业务事件
sql = "" # sql语句

# 4、执行sq语句
cur.execute(sql)

# 5、提交语句
conn.commit() 

# 6、关闭
cur.close()
conn.close()

二、创建数据库和表

import pymysql

conn = pymysql.connect(host="127.0.0.1",
user = 'root',
passwd ="root",
port = 3306,
charset = 'utf8'
)
cur = conn.cursor()

# 创建 数据库
sql0 = "create database if not exists species"
cur.execute(sql0)

# 使用数据库
cur.execute("use species")

# 创建表
sql2 = """
	create table echart(
	id int primary key auto_increment,
	province varchar(50),
	num int,
	update_at datetime
	);
"""

# 执行
cur.execute(sql2)

# 提交任务
conn.commit()

# 关闭
cur.close()
conn.close()

三、插入数据-insert

import pymysql
import datetime
info = {'北京市': 182, '天津市': 149, '上海市': 211, '重庆市': 171, '河北省': 174, '山西省': 106, '辽宁省': 153, '吉林省': 103, '黑龙江省': 105, '江苏省': 230, '浙江省': 260, '安徽省': 197, '福建省': 287, '江西省': 208, '山东省': 179, '河南省': 158, '湖北省': 195, '湖南省': 191, '广东省': 321, '海南省': 219, '四川省': 244, '贵州省': 194, '云南省': 334, '陕西省': 151, '甘肃省': 114, '青海省': 55, '台湾省': 297, '内蒙古自治区': 91, '广西壮族自治区': 297, '西藏自治区': 81, '宁夏回族自治区': 43, '新疆维吾尔自治区': 123, '香港特别行政区': 220, '澳门特别行政区': 186}

conn = pymysql.connect(host="127.0.0.1",
user = 'root',
passwd ="root",
port = 3306,
charset = 'utf8'
)

# 创建游标
cur = conn.cursor()

# sql
sql = "use species"
cur.execute(sql)  # 注意:使用数据库要先执行
for p,n in info.items():
    time = datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S")  # 获取系统时间
    sql1 = """
        insert into echart(province,num,update_at)
        values ('{}',{},'{}')""".format(p,n,str(time))
    print(sql1) # 测试
    cur.execute(sql1)

conn.commit()
cur.close()
conn.close()

四、查询数据

1、查询结果返回tuple元组

import pymysql

conn = pymysql.connect(host="127.0.0.1",
                       user='root',
                       password='root',
                       port=3306,
                       db='species',
                       charset='utf8')
cur = conn.cursor()
sql = """
    select * from echart
"""
cur.execute(sql)
f = cur.fetchall() # 返回元组类型的数据
print(f)
conn.commit()

结果形式:

((),())

2、查询结果返回字典类型

import pymysql

conn = pymysql.connect(host="127.0.0.1",
                       user='root',
                       password='root',
                       port=3306,
                       db='species',
                       charset='utf8')
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
sql = """
    select * from echart
"""
cur.execute(sql)
f = cur.fetchall() # 返回元组类型的数据
print(f)
conn.commit()

结果形式:

[{},{}]

3、查询结果返回list类型

from itertools import chain
import pymysql
conn = pymysql.connect(host="127.0.0.1",
                       user='root',
                       password='root',
                       port=3306,
                       db='species',
                       charset='utf8')
cur = conn.cursor()
sql = """
    select * from echart
"""
cur.execute(sql)
f = cur.fetchall()
resultlist = list(chain.from_iterable(f))
print(resultlist)
conn.commit()
  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值