Python数据库编程实战:MySQL、MongoDB应用指南 Python是一种高级编程语言,被广泛应用于数据分析、人工智能、web开发等领域。而数据库是数据应用的核心,常见的数据库有MySQL、MongoDB等。Python对数据库的支持非常好,下面我们就来介绍一下如何用Python来实现数据库编程。 一、MySQL MySQL是一个开源的关系型数据库管理系统,被广泛应用于web开发、数据分析等领域。Python通过pymysql模块提供了对MySQL的支持。下面我们就来看一下如何使用Python操作MySQL数据库。 1. 安装pymysql 使用pip命令可以很方便地安装pymysql模块: ``` pip install pymysql ``` 2. 连接数据库 使用pymysql.connect()函数连接到MySQL数据库,需要指定主机名、用户名、密码、数据库名等参数: ```python import pymysql # 打开数据库连接 db = pymysql.connect(host="localhost", user="root", password="123456", database="test") # 使用 cursor() 方法创建一个游标对象 cursor cursor = db.cursor() # 执行 SQL 查询 sql = "SELECT * FROM users" cursor.execute(sql) # 获取所有记录列表 results = cursor.fetchall() # 输出结果 for row in results: print(row) # 关闭数据库连接 db.close() ``` 3. 执行SQL语句 使用游标对象的execute()方法执行SQL语句,可以执行查询、插入、更新、删除等操作。下面是一些常见的SQL语句示例: ```python # 查询 sql = "SELECT * FROM users WHERE age >= 18" cursor.execute(sql) # 插入 sql = "INSERT INTO users(name, age) VALUES('Tom', 20)" cursor.execute(sql) db.commit() # 提交事务 # 更新 sql = "UPDATE users SET age = age + 1 WHERE name = 'Tom'" cursor.execute(sql) db.commit() # 删除 sql = "DELETE FROM users WHERE age < 18" cursor.execute(sql) db.commit() ``` 4. 批量插入数据 如果需要批量插入数据,可以使用executemany()方法,例如: ```python data = [('Alice', 18), ('Bob', 19), ('Cathy', 20)] sql = "INSERT INTO users(name, age) VALUES(%s, %s)" cursor.executemany(sql, data) db.commit() # 提交事务 ``` 5. 使用with语句自动管理资源 为了避免忘记关闭数据库连接,我们可以使用with语句自动管理资源,例如: ```python with pymysql.connect(host="localhost", user="root", password="123456", database="test") as db: with db.cursor() as cursor: sql = "SELECT * FROM users" cursor.execute(sql) results = cursor.fetchall() for row in results: print(row) ``` 二、MongoDB MongoDB是一个开源的文档数据库,被广泛应用于web开发、数据分析等领域。Python通过pymongo模块提供了对MongoDB的支持。下面我们就来看一下如何使用Python操作MongoDB数据库。 1. 安装pymongo 使用pip命令可以很方便地安装pymongo模块: ``` pip install pymongo ``` 2. 连接数据库 使用pymongo.MongoClient()函数连接到MongoDB数据库,需要指定主机名、端口号等参数: ```python import pymongo # 连接 MongoDB client = pymongo.MongoClient("mongodb://localhost:27017/") # 获取数据库 db = client["test"] # 获取集合 collection = db["users"] # 查询数据 results = collection.find() for result in results: print(result) ``` 3. 插入数据 使用collection.insert_one()方法插入一条数据,例如: ```python data = {"name": "Tom", "age": 20} collection.insert_one(data) ``` 4. 批量插入数据 如果需要批量插入数据,可以使用collection.insert_many()方法,例如: ```python data = [{"name": "Alice", "age": 18}, {"name": "Bob", "age": 19}, {"name": "Cathy", "age": 20}] collection.insert_many(data) ``` 5. 更新数据 使用collection.update_one()方法更新一条数据,例如: ```python filter = {"name": "Tom"} update = {"$set": {"age": 21}} collection.update_one(filter, update) ``` 6. 删除数据 使用collection.delete_one()方法删除一条数据,例如: ```python filter = {"name": "Tom"} collection.delete_one(filter) ``` 以上就是使用Python操作MySQL和MongoDB的基本方法,通过这些方法可以实现数据查询、插入、更新、删除等操作。