目录
- Python快速上手(二十一)
- Python3 使用数据库-mysql-connector
- 1. 创建数据库连接
- 2. 创建数据表
- 3. 插入数据
- 4. 查询数据
- 5. 使用 WHERE 条件语句
- 6. 排序
- 7. 删除记录
- 8. 更新表数据
- 9. 删除表
- 10.异常处理
- 总结
Python快速上手(二十一)
Python3 使用数据库-mysql-connector
在Python中使用mysql-connector库连接MySQL数据库是一种简单而强大的方式。mysql-connector库提供了一系列方法来连接数据库、执行SQL语句以及处理数据。
1. 创建数据库连接
首先,我们需要安装mysql-connector库。可以使用以下命令来安装:
pip install mysql-connector-python
接下来,我们可以使用以下代码来创建数据库连接:
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语句来创建数据表。以下是一个示例代码:
python"># 创建数据表
cursor.execute("CREATE TABLE mytable (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)")
在这个示例中,我们使用execute()方法执行CREATE TABLE语句来创建一个名为mytable的数据表,包含id、name和age三个字段。
3. 插入数据
现在,让我们向数据表中插入一些数据。以下是一个示例代码:
python"># 插入数据
sql = "INSERT INTO mytable (name, age) VALUES (%s, %s)"
val = ("Alice", 25)
cursor.execute(sql, val)# 提交更改
conn.commit()
在这个示例中,我们使用INSERT INTO语句向mytable表中插入一条数据,然后使用commit()方法提交更改。
4. 查询数据
我们可以使用SELECT语句来查询数据。以下是一个示例代码:
python"># 查询数据
cursor.execute("SELECT * FROM mytable")
result = cursor.fetchall()for row in result:print(row)
这段代码执行了一个简单的SELECT * FROM mytable查询,并打印了查询结果。
5. 使用 WHERE 条件语句
如果我们想要根据特定条件过滤数据,可以使用WHERE条件语句。以下是一个示例代码:
python"># 使用 WHERE 条件语句
sql = "SELECT * FROM mytable WHERE age > 20"
cursor.execute(sql)
result = cursor.fetchall()for row in result:print(row)
这段代码查询age大于20的数据,并打印结果。
6. 排序
我们也可以对查询结果进行排序。以下是一个示例代码:
python"># 排序
sql = "SELECT * FROM mytable ORDER BY age DESC"
cursor.execute(sql)
result = cursor.fetchall()for row in result:print(row)
这段代码按照age字段降序排列查询结果。
7. 删除记录
如果我们想要删除数据表中的记录,可以使用DELETE语句。以下是一个示例代码:
python"># 删除记录
sql = "DELETE FROM mytable WHERE name = 'Alice'"
cursor.execute(sql)# 提交更改
conn.commit()
这段代码删除了name为Alice的记录。
8. 更新表数据
如果我们需要更新数据表中的数据,可以使用UPDATE语句。以下是一个示例代码:
python"># 更新表数据
sql = "UPDATE mytable SET age = 30 WHERE name = 'Alice'"
cursor.execute(sql)# 提交更改
conn.commit()
这段代码将name为Alice的记录的age字段更新为30。
9. 删除表
最后,如果我们想要删除数据表,可以使用DROP TABLE语句。以下是一个示例代码:
python"># 删除表
cursor.execute("DROP TABLE mytable")
这段代码删除了名为mytable的数据表。
10.异常处理
在实际应用中,我们应该添加异常处理来处理可能出现的错误。下面是一个使用try…except语句来处理异常的示例代码:
python">import mysql.connectortry: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数据库进行管理和操作。