python下MySQLdb用法实例分析
MySQLdb是Python下操作MySQL的一个常用库,它提供了Python与MySQL之间的连接和交互。本文将从以下几个方面介绍MySQLdb的用法实例,分别是安装、连接、查询、更新和删除。
一、安装MySQLdb
在使用MySQLdb之前,需要先安装MySQLdb库。使用pip命令可以方便地进行安装,命令如下:
```
pip install MySQL-python
```
需要注意的是,MySQL-python是MySQLdb的一个别名,两者可以互换使用。
二、连接MySQL
在使用MySQLdb之前,需要先连接MySQL数据库。连接MySQL的代码如下:
```
import MySQLdb
db = MySQLdb.connect(host="localhost", user="root", passwd="password", db="test")
```
其中,host、user和passwd分别表示MySQL数据库的主机名、用户名和密码。db表示要连接的数据库名称。连接MySQL之后,可以通过db.cursor()方法创建一个游标对象,用于执行SQL语句。
三、查询数据
查询数据是MySQLdb的主要功能之一。可以通过游标对象执行SQL查询语句,如下所示:
```
cursor = db.cursor()
cursor.execute("SELECT * FROM students")
results = cursor.fetchall()
for row in results:
id = row[0]
name = row[1]
age = row[2]
print("id=%d,name=%s,age=%d" % (id, name, age))
```
以上代码查询了students表中的所有数据,并将结果打印出来。其中,fetchall()方法返回所有查询结果,是一个元组类型的列表。可以通过元组的下标获取每一行数据的各个字段。
四、更新数据
更新数据也是MySQLdb的重要功能之一。可以通过游标对象执行SQL更新语句,如下所示:
```
cursor = db.cursor()
sql = "UPDATE students SET age = age + 1 WHERE id = '%d'" % (1)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
```
以上代码将students表中id为1的学生年龄加1,然后提交更新操作。如果执行成功,应该调用db.commit()方法提交更新。
五、删除数据
删除数据也是MySQLdb的一个功能。可以通过游标对象执行SQL删除语句,如下所示:
```
cursor = db.cursor()
sql = "DELETE FROM students WHERE id = '%d'" % (1)
try:
cursor.execute(sql)
db.commit()
except:
db.rollback()
```
以上代码删除了students表中id为1的学生数据,并提交了删除操作。如果执行成功,应该调用db.commit()方法提交删除。