Python3.7.4连接MySQL数据库

一、PyMySQL安装

#终端中安装pymysql
pip install pymysql

二、连接对象

1、获取连接对象

    如何获取连接对象呢?这就需要使用connect()函数,该函数有多个参数,具体使用哪个参数,取决于使用数据库类型。connect()函数常用参数说明:

              1、host参数表示的是数据库所在地址,默认值是localhost,也就是说本机运行这个参数可以不指定

    2、user数据库的用户名,必须存在

    3、passwd 数据库的密码

    4、db,数据库名称

    5、charset 用来指定字符集(默认utf8)

2、游标对象的方法:

   close():关闭此connect对象, 关闭后无法再进行操作,除非再次创建连接
  commit():提交当前事务,如果是支持事务的数据库执行增删改后没有commit则数据库默认回滚,白操作了
  rollback():取消当前事务
  cursor():创建游标对象

三、游标对象

游标对象(Cursor Object)代表数据库中的游标,用于指示抓取数据操作的上下文,主要执行SQL语句、用于存储过程、获取查询结果等方法,通过使用连接对象的cursor()方法,可以获取到游标对象,游标对象的方法如下所示:

其中cursor游标对象又有如下属性和方法:
  常用方法:
  close():关闭此游标对象
  fetchone():得到结果集的下一行
  fetchmany(size):获取指定数量的记录
  fetchall():得到结果集的所有记录
  excute(sql[, args]):执行一个数据库查询或命令
  excutemany(sql, args):执行多个数据库查询或命令
  常用属性:
  connection:创建此游标对象的数据库连接
  arraysize:使用fetchmany()方法一次取出多少条记录,默认为1
  lastrowid:相当于PHP的last_inset_id()

四、连接数据库

# 导入pymysql模块
import pymysql
# 连接database,参数1主机名或IP;参数2:用户名;参数3:密码;参数4:数据库名称
conn = pymysql.connect(host=“你的数据库地址”, user=“用户名”,password=“密码”,database=“数据库名”,charset=“utf8”)
# 创建一个可以执行SQL语句的光标对象
cursor = conn.cursor()
# 定义要执行的SQL语句
sql = """
......
"""
# 执行SQL语句
cursor.execute(sql)

# 关闭光标对象
cursor.close()
# 关闭数据库连接
conn.close()

五、创建数据表

# 导入pymysql模块
import pymysql
# 连接database
conn = pymysql.connect(host=“localhost”, user=“root”,password=“tarena”,database=“test”,charset=“utf8”)
# 创建一个可以执行SQL语句的光标对象
cursor = conn.cursor()
# 定义要执行的SQL语句
sql = """
create table student (
id int primary key ,
name char(10) not null unique,
age tinyint not null
);
"""
# 执行SQL语句
cursor.execute(sql)
# 关闭光标对象
cursor.close()
# 关闭数据库连接
conn.close()

六、操作数据表

import pymysql

# 打开数据库连接
db = pymysql.connect("localhost", "root", "tarena", "student",charset="utf8")
# 使用cursor()方法获取操作游标
cursor = db.cursor()
# 数据列表
data = [(001,'张三',18),
        (002,'李四',19),
        (003,'王五',20),
        ]
try:
    # 执行sql语句,插入多条数据
    cursor.executemany("insert into student(id, name, age) values (%s,%s,%s)", data)
    # 提交数据
    db.commit()
except:
    # 发生错误时回滚
    db.rollback()

# 关闭数据库连接
db.close()

 

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值