Python Mysqldb 使用Python操作MySQL数据库的库
更新时间:2023-10-08Python Mysqldb是什么?
Python Mysqldb是Python程序员使用Python编程语言操作MySQL数据库的一种库。MySQL数据库是非常流行的一种关系型数据库,并被广泛地应用于Web应用程序、移动应用程序、业务应用程序、数据分析等场景。在Python中,Mysqldb提供了一种可靠、简单、直接的方法来与MySQL数据库进行交互。
如何安装Python Mysqldb?
在使用Python Mysqldb之前,需要确保MySQL数据库已经安装在本地计算机或远程服务器中。同时,还需要使用pip工具安装Python Mysqldb库。
pip install mysqlclient
如果您使用的是Python 2.7版本,请使用下面的命令来安装:
pip install MySQL-python
Python Mysqldb的基本使用
Python Mysqldb库提供了一系列的函数和方法,可以用来连接数据库、执行SQL查询、更新和删除数据等操作。
首先需要在Python文件中导入需要的模块:
import MySQLdb
连接MySQL数据库:
db = MySQLdb.connect(host='localhost', user='root', password='123456', db='test', charset='utf8')
执行SQL查询:
cursor = db.cursor()
cursor.execute('SELECT * FROM students')
results = cursor.fetchall()
更新数据:
cursor = db.cursor()
sql = "UPDATE students SET age = age + 1 WHERE sex = 'male'"
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
删除数据:
cursor = db.cursor()
sql = "DELETE FROM students WHERE age > 18"
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
Python Mysqldb高级操作
除了基本的操作,Python Mysqldb还提供了更多高级功能,例如事务处理、批量插入数据和使用游标等。
使用事务处理:
try:
cursor.execute('START TRANSACTION')
cursor.execute('UPDATE students SET age = age + 1 WHERE sex = 'male'')
cursor.execute('COMMIT')
except:
db.rollback()
批量插入数据:
cursor = db.cursor()
sql = "INSERT INTO students(name, age, sex) VALUES (%s, %s, %s)"
data = [('Tom', 18, 'male'), ('Lily', 19, 'female')]
try:
cursor.executemany(sql, data)
db.commit()
except:
db.rollback()
使用游标进行操作:
cursor = db.cursor(MySQLdb.cursors.DictCursor)
sql = "SELECT * FROM students LIMIT 10"
cursor.execute(sql)
results = cursor.fetchall()
for row in results:
print(row['name'], row['age'], row['sex'])
以上是Python Mysqldb的一些基础和高级操作,希望能够帮助您更好地使用Python Mysqldb操作MySQL数据库。