目录
Python快速上手(二十一)
Python3 使用数据库-mysql-connector
在Python中使用mysql-connector库连接MySQL数据库是一种简单而强大的方式。mysql-connector库提供了一系列方法来连接数据库、执行SQL语句以及处理数据。
1. 创建数据库连接
首先,我们需要安装mysql-connector库。可以使用以下命令来安装:
pip install mysql-connector-python
接下来,我们可以使用以下代码来创建数据库连接:
import mysql.connector
# 创建数据库连接
conn = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="mydatabase"
)
# 创建游标对象
cursor = conn.cursor()
在这段代码中,我们使用mysql.connector.connect()方法来创建数据库连接,并传入主机名、用户名、密码和数据库名称。然后,我们创建了一个游标对象cursor,用于执行SQL语句。
2. 创建数据表
接下来,我们可以使用CREATE TABLE语句来创建数据表。以下是一个示例代码:
# 创建数据表
cursor.execute("CREATE TABLE mytable (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)")
在这个示例中,我们使用execute()方法执行CREATE TABLE语句来创建一个名为mytable的数据表,包含id、name和age三个字段。
3. 插入数据
现在,让我们向数据表中插入一些数据。以下是一个示例代码:
# 插入数据
sql = "INSERT INTO mytable (name, age) VALUES (%s, %s)"
val = ("Alice", 25)
cursor.execute(sql, val)
# 提交更改
conn.commit()
在这个示例中,我们使用INSERT INTO语句向mytable表中插入一条数据,然后使用commit()方法提交更改。
4. 查询数据
我们可以使用SELECT语句来查询数据。以下是一个示例代码:
# 查询数据
cursor.execute("SELECT * FROM mytable")
result = cursor.fetchall()
for row in result:
print(row)
这段代码执行了一个简单的SELECT * FROM mytable查询,并打印了查询结果。
5. 使用 WHERE 条件语句
如果我们想要根据特定条件过滤数据,可以使用WHERE条件语句。以下是一个示例代码:
# 使用 WHERE 条件语句
sql = "SELECT * FROM mytable WHERE age > 20"
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row)
这段代码查询age大于20的数据,并打印结果。
6. 排序
我们也可以对查询结果进行排序。以下是一个示例代码:
# 排序
sql = "SELECT * FROM mytable ORDER BY age DESC"
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row)
这段代码按照age字段降序排列查询结果。
7. 删除记录
如果我们想要删除数据表中的记录,可以使用DELETE语句。以下是一个示例代码:
# 删除记录
sql = "DELETE FROM mytable WHERE name = 'Alice'"
cursor.execute(sql)
# 提交更改
conn.commit()
这段代码删除了name为Alice的记录。
8. 更新表数据
如果我们需要更新数据表中的数据,可以使用UPDATE语句。以下是一个示例代码:
# 更新表数据
sql = "UPDATE mytable SET age = 30 WHERE name = 'Alice'"
cursor.execute(sql)
# 提交更改
conn.commit()
这段代码将name为Alice的记录的age字段更新为30。
9. 删除表
最后,如果我们想要删除数据表,可以使用DROP TABLE语句。以下是一个示例代码:
# 删除表
cursor.execute("DROP TABLE mytable")
这段代码删除了名为mytable的数据表。
10.异常处理
在实际应用中,我们应该添加异常处理来处理可能出现的错误。下面是一个使用try…except语句来处理异常的示例代码:
import mysql.connector
try:
conn = mysql.connector.connect(
host="localhost",
user="root",
password="password",
database="mydatabase"
)
cursor = conn.cursor()
cursor.execute("SELECT * FROM mytable")
results = cursor.fetchall()
for row in results:
print(row)
except mysql.connector.Error as e:
print(f"Error: {e}")
finally:
cursor.close()
conn.close()
在这个示例中,我们使用try…except语句来捕获可能出现的pymysql.Error异常。如果出现异常,我们打印错误信息。无论是否出现异常,最后都会关闭游标和连接。
总结
在本文中,我们详细讲解了如何使用mysql-connector库在Python中连接MySQL数据库,并进行一系列操作,包括创建数据库连接、创建数据表、插入数据、查询数据、使用WHERE条件语句、排序、删除记录、更新表数据以及删除表。通过这些操作,我们可以轻松地对MySQL数据库进行管理和操作。