mysql数据库在Python中的简单操作

from pymysql import connect


def check_data(cur):
    sql = "select * from student;"     # sql语句
    cur.execute(sql)    # 执行sql语句

    # 获取查询的所有记录
    result = cur.fetchall()
    print(result)
    for value in result:
        print(value)


def insert_data(cur, conn):
    sql = """insert into student value(0,"小美",1990-01-02,"女");"""
    cur.execute(sql)
    conn.commit()   # python中默认开启事务,必须提交数据后才能完成修改


def main():

  # 链接数据库
  conn = connect(host="localhost", user="root", password="MySQL", db="python_1", port=3306)

  # 使用cursor获取游标对象
  cur = conn.cursor()

  # 查询数据库信息
  check_data(cur)

  # 插入数据操作
  insert_data(cur, conn)

  # 关闭游标对象
  cur.close()
  # 关闭链接
  conn.close()


if __name__ == "__main__":
  main()

mysql进行execute操作的集合称为事务:访问和更新数据库的一个程序执行单元。

满足一下四种要求:

  1. 原子性:事务中包括的所有操作只有都做和都不做连个选择。
  2. 一致性:事务必须使数据库从一致性状态变到另一个一致性状态。
  3. 隔离性:一个事务的执行不能被其他事务干扰。
  4. 持久性:一旦事务提交了,它对数据库的改变就是永久性的。

所以修改数据库数据时,需要commit()提交当前事务,如果是支持事务的数据库执行增删改后没有commit则数据库默认回滚,白操作了

感觉mysql数据库在python中的操作有点类似于socket套接字,先进行数据库的链接,然后进行你想要的相对应的操作,最后关闭链接!

猜你喜欢

转载自www.cnblogs.com/lzb888/p/11141798.html