首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

PyMySQL,一个MySQL Python库!

PyMySQL - 在Python里操作MySQL数据库的得力助手

数据库操作是开发中的重中之重,PyMySQL这个库能让咱们用Python代码轻松操作MySQL数据库。它是纯Python写的MySQL客户端库,不用装啥额外的东西,上手特别快。今天我就带大家玩转这个超好用的工具。

装起来先

pip install pymysql

装好就能用了,就这么简单。开发的时候我建议再装个configparser,方便管理数据库配置:

pip install configparser

连接数据库

要用数据库第一步肯定是连接啦。这个连接代码你得记住,基本上每次都要用:

import pymysql

conn = pymysql.connect(

host=“localhost”, # 数据库在哪儿

user=“root”, # 用户名

password=“123456”, # 密码

database=“test_db” # 要用哪个数据库

)

print(“连上了!”)

温馨提示: 这些连接信息最好不要写死在代码里,容易泄密。可以放在配置文件里,比如:

[database]

host = localhost

user = root

password = 123456

database = test_db

增删改查都不在话下

有了连接就能开始写SQL了。PyMySQL里用cursor对象来执行SQL语句:

# 插入数据

with conn.cursor() as cursor:

sql = “INSERT INTO users (name, age) VALUES (%s, %s)”

cursor.execute(sql, (“小明”, 18))

conn.commit() # 别忘了提交!

# 查询数据

with conn.cursor() as cursor:

cursor.execute(“SELECT * FROM users”)

users = cursor.fetchall()

for user in users:

print(user)

写SQL的时候用%s做占位符,可以防SQL注入。values用tuple传进去就行。

异常处理很重要

数据库操作容易出错,得好好处理异常:

try:

with conn.cursor() as cursor:

sql = “UPDATE users SET age = %s WHERE name = %s”

cursor.execute(sql, (20, “小明”))

conn.commit()

except pymysql.Error as e:

print(f“哎呀出错了: {e}”)

conn.rollback() # 出错了就回滚

finally:

conn.close() # 记得关连接

温馨提示: with语句超好用,能自动关cursor,但connection还是得手动关。

批量操作效率高

一条一条插入太慢了,咱们可以一次性插很多:

data = [

(“张三”, 20),

(“李四”, 21),

(“王五”, 22)

]

with conn.cursor() as cursor:

cursor.executemany(sql, data) # 用executemany批量插入

conn.commit()

executemany方法,效率蹭蹭往上涨。

把这些知识点都掌握了,基本上就能轻松玩转PyMySQL了。记住几个小技巧:配置信息放配置文件、善用with语句、记得处理异常、批量操作提高效率。多练练很快就熟练了!

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OOUFfISB5nyqDDXvmTjF2YTw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券