python操作mysql数据库

作者: Cassie测试路 | 来源:发表于2020-08-01 16:42 被阅读0次

python操作mysql数据库

安装包

  • 安装mysql驱动,连接mysql服务器,这里选择pymysql包
pip install pymysql

常用方法

  • cur.execute(query, args=None),返回影响的行数。args可以是tuple, list or dict,如果要传递参数需要使用占位符%s将sql语句里面的value替换,然后再传递参数。
  • cur.rowcount,返回影响的行数。
  • cur.fetchall(),一次性返回所有符合的行,tuple类型,并且每一个元素也是tuple类型
  • cur.fetchone(),基于上一次指针位置返回下一条数据,tuple类型,相当于将fetchall()中的数据逐条输出,直到返回空。
查询数据库
# 导入MySQL驱动
import pymysql

# 连接mysql服务器上的某数据库。默认host:127.0.0.1
conn = pymysql.connect(host=host, user=user, password=password, database=database)

# 新建游标指针
cur = conn.cursor()     

# 执行mysql语句,返回影响的行数(cur.rowcount)
cur.execute('SELECT * FROM user WHERE id=%s', (10000,))

# 获取所有查询结果,cur.fetchall()返回找到的所有行,再次执行fetchall()会返回空元组
cur.fetchall()      # 例如查询到的数据只有一条时。 ((10000, '哈哈哈', 28, datetime.datetime(2020, 4, 15, 5, 18, 0),)

# 逐条获取查询结果,cur.fetchone()返回指针指向的当前行
cur.fetchone()      # 例如查询到的数据只有一条时。(10000, '哈哈哈', 28, datetime.datetime(2020, 4, 15, 5, 18, 0)

# 关闭链接
cur.close()    # close cursor, The result will be freed.
conn.close()      # Disconnect from the MySQL server
更新mysql数据库
# 更新mysql数据库,会将查找到的所有符合条件的语句都修改
cur.execute('UPDATE user SET fullname=%s WHERE nickname=%s', ('test', 'm1234'))

# 提交事务
cur.execute('commit')     # 效果同conn.commit(),会将所有语句提交

相关文章

网友评论

    本文标题:python操作mysql数据库

    本文链接:https://www.haomeiwen.com/subject/gfjsrktx.html