python 常用模块之 pymysql

一 配置环境

pip3 install pymysql
如果pip安装了插件,但pycharm中无法导入
pycharm->File->Settings->Project Interpreter->设置

二 python 连接mysql 过程

在这里插入图片描述

三 连接mysql

(1)需要创建一个connection对象,目的:用来跟数据库进行连接
conn = pymysql.connect(host=‘localhost’,user=‘username’,password='password,database=‘DBname’,charset=‘utf8’)
conn 自带事务
(2)参数详解
host:MySQL服务器地址,用来连接MySQL主机,本机是‘localhost’
port:MySQL服务器的端口号,默认3306
user:连接的用户名
passwd:连接密码
database:数据库名称(用来选择要连接哪个数据库)
charset:通信采用的编码方式
(3)创建一个游标cursor数据库交互对象,目的:用来执行SQL语句并获得结果(从数据库取得数据)
(4)关闭连接:在使用完时候要关闭连接 使用close()
先关闭cursor: cur.close()
再关闭connection:conn.close()
(5)cur = conn.cursor(cursor=pymysql.cursors.DictCursor) 获取的内容以字典的方式展示

四 操作mysql

(1)查询

import pymysql
conn = pymysql.connect(host='hostname',
                       user='username',
                       password='password',
                       database='DBname',
                       charset='utf8')
cur = conn.cursor()
sql='''
    select * from tableName;
'''
cur.execute(sql)
result = cur.fetchall()
cur.close()
conn.close()

(2)修改

import pymysql
conn = pymysql.connect(host='hostname',
                       user='username',
                       password='password',
                       database='DBname',
                       charset='utf8')
cur = conn.cursor()
sql='''
    update tableName set 字段=新值 where 条件;
'''
cur.execute(sql)
conn.commit()

cur.close()
conn.close()

(3)新增

import pymysql
conn = pymysql.connect(host='hostname',
                       user='username',
                       password='password',
                       database='DBname',
                       charset='utf8')
cur = conn.cursor()
sql='''
    insert into tableName values(值1,值2...);
'''
cur.execute(sql)
conn.commit()

cur.close()
conn.close()

(4)删除

import pymysql
conn = pymysql.connect(host='hostname',
                       user='username',
                       password='password',
                       database='DBname',
                       charset='utf8')
cur = conn.cursor()
sql='''
    delete from tableName where 条件;
'''
cur.execute(sql)
conn.commit()

cur.close()
conn.close()
# 注意不要用字符串格式化的方式拼接sql语句
# sql = '''
#     insert into admin(username, pwd, mobile) values("wupeiqi", "qweasd", "13812345678")
# '''
# cur.execute(sql)


# sql = '''
#     insert into admin(username, pwd, mobile) values(%s, %s, %s)
# '''

# cur.execute(sql, ['王五', 'zxcasd', '13812345678'])


sql = '''
    insert into admin(username, pwd, mobile) values(%(n1)s, %(n2)s, %(n3)s)
'''

cur.execute(sql, {'n1':'甄嬛', 'n2':'zxcasd', 'n3':'13812345678'})

五 封装一个连接mysql的类

(1)使用init函数 创建mysql的连接,使用del函数释放连接
(2)使用传参的方式灵活的执行mysql命令
(3)执行sql命令时注意发生异常,需要捕获,灵活使用try…except…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值