温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python如何使用pymysql数据库

发布时间:2020-09-24 10:35:47 来源:亿速云 阅读:155 作者:Leah 栏目:编程语言

Python如何使用pymysql数据库?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

1、准备数据库demo_temp

create database demo_temp;

2、连接数据库

import pymysql.cursors
connect = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123',
    db='demo_temp',
    charset='utf8',
    cursorclass=pymysql.cursors.DictCursor
)

3、创建表

import pymysql.cursors
# 连接数据库
connect = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123',
    db='demo_temp',
    charset='utf8',
    cursorclass=pymysql.cursors.DictCursor
)
# 创建表users
with connect.cursor() as cursor:
    sql = """
    CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT ,
    user CHAR(30),
    passwd CHAR(20))
    """
    cursor.execute(sql)
connect.close()

4、一个简单的增、删、改、查实例

import pymysql.cursors
# 连接数据库
connect = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123',
    db='demo_temp',
    charset='utf8',
    cursorclass=pymysql.cursors.DictCursor
)
with connect.cursor() as cursor:   # 创建游标
    # 创建表
    sql = """
    CREATE TABLE users (
    id INT PRIMARY KEY AUTO_INCREMENT ,
    user CHAR(30),
    passwd CHAR(20))
    """
    cursor.execute(sql)
    # 向表中插入数据
    sql = """
        INSERT INTO users (user,passwd) VALUES ('小明','123')
        """
    cursor.execute(sql)
    connect.commit()   # 插入数据后必须更新
    # 查询数据
    sql = """
        select * from users
        """
    cursor.execute(sql)
    ret = cursor.fetchone()  # 提取查询数据
    print(ret)
    # 修改数据
    sql = """
           update users set user='葫芦娃' where id=1
           """
    cursor.execute(sql)
    # 再次查询数据
    sql = """
           select * from users
           """
    cursor.execute(sql)
    ret = cursor.fetchone()  # 提取查询数据
    print(ret)
connect.close()   # 关闭数据库连接

打印内容如下

{'id': 1, 'user': '小明', 'passwd': '123'}
{'id': 1, 'user': '葫芦娃', 'passwd': '123'}

5、简单的事务

import pymysql.cursors
# 连接数据库
connect = pymysql.connect(
    host='127.0.0.1',
    user='root',
    password='123',
    db='demo_temp',
    charset='utf8',
    cursorclass=pymysql.cursors.DictCursor
)
try:
    with connect.cursor() as cursor:  # 创建游标
        # 插入数据
        sql = """
            INSERT INTO users (user,passwd) VALUES ('11111','123')
            """
        cursor.execute(sql)
        # 更新数据
        sql_1 = """
              update users set user='葫芦娃' where id=1
        """
        cursor.execute(sql_1)
        raise NameError   # 更新数据时主动抛出异常
except Exception as e:
    connect.rollback()  # 事务回滚
connect.commit()
connect.close()  # 关闭数据库连接

通过下面的小动画我们可以看出,这里模拟在更新数据时出现问题。而插入数据时没有问题的。然后执行事务回滚,最终数据没有被写入到数据库中。

Python如何使用pymysql数据库

关于Python如何使用pymysql数据库问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注亿速云行业资讯频道了解更多相关知识。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI