Python之pymysql数据库的简单使用

python

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()

相关推荐:《Python相关教程》

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数据库的简单使用 的全部内容, 来源链接: utcz.com/z/523252.html

回到顶部