Python连接SQLite、MySQL、MSSQL、MongoDB和Redis数据库实战
172 浏览量
更新于2024-09-04
收藏 76KB PDF 举报
本文将介绍如何使用Python连接到多种主流的数据库,包括关系型数据库SQLite、MySQL、MSSQL以及非关系型数据库MongoDB和Redis。通过实例代码,我们将了解如何进行基本的操作,如创建数据库连接、执行SQL语句、插入数据等。
首先,我们来看如何使用Python连接SQLite数据库。在Python中,我们可以使用内置的`sqlite3`模块来实现这个功能。以下是一个简单的示例:
```python
import sqlite3
try:
# 创建或打开已存在的数据库文件
with sqlite3.connect('test.db') as conn:
print("数据库连接成功")
# 删除表(如果存在)
conn.execute("DROP TABLE IF EXISTS COMPANY")
# 创建表
sql = """
CREATE TABLE IF NOT EXISTS COMPANY
(ID INTEGER PRIMARY KEY AUTOINCREMENT,
NAME TEXT NOT NULL,
AGE INT NOT NULL,
ADDRESS CHAR(50),
SALARY REAL);
"""
conn.execute(sql)
print("表格创建成功")
# 插入数据
data = [
('Paul', 32, 'California', 20000.00),
('Allen', 25, 'Texas', 15000.00),
('Teddy', 23, 'Norway', 20000.00),
('Mark', 25, 'Rich-Mond', 65000.00),
('David', 27, 'Texas', 85000.00),
('Kim', 22, 'South-Hall', 45000.00),
('James', 24, 'Houston', 10000.00)
]
conn.executemany("INSERT INTO COMPANY (NAME,AGE,ADDRESS,SALARY) VALUES (?,?,?,?)", data)
print("数据插入成功")
except Exception as e:
traceback.print_exc()
```
对于MySQL数据库,我们需要使用`pymysql`库,安装后可以通过以下方式连接:
```python
import pymysql
# 连接MySQL数据库
conn = pymysql.connect(host='localhost', user='username', password='password', db='database_name')
try:
with conn.cursor() as cursor:
# 执行SQL语句
sql = "SELECT * FROM COMPANY"
cursor.execute(sql)
result = cursor.fetchall()
for row in result:
print(row)
finally:
conn.close()
```
对于MSSQL,可以使用`pyodbc`库:
```python
import pyodbc
# MSSQL连接字符串
conn_str = (
r'DRIVER={ODBC Driver 17 for SQL Server};'
r'SERVER=myServerAddress;'
r'DATABASE=myDataBase;'
r'UID=myUsername;'
r'PWD=myPassword;'
)
# 连接MSSQL
conn = pyodbc.connect(conn_str)
try:
with conn.cursor() as cursor:
# 执行SQL语句
cursor.execute("SELECT * FROM myTable")
rows = cursor.fetchall()
for row in rows:
print(row)
finally:
conn.close()
```
对于非关系型数据库,如MongoDB,我们可以使用`pymongo`库:
```python
from pymongo import MongoClient
# 连接MongoDB
client = MongoClient('mongodb://localhost:27017/')
db = client['my_database']
collection = db['my_collection']
# 插入数据
document = {"name": "John", "age": 30, "city": "New York"}
collection.insert_one(document)
# 查询数据
for doc in collection.find():
print(doc)
```
对于Redis,我们需要`redis`库:
```python
import redis
# 连接Redis
r = redis.Redis(host='localhost', port=6379, db=0)
# 设置键值
r.set('key', 'value')
# 获取键值
value = r.get('key')
print(value)
```
以上代码展示了如何使用Python连接SQLite、MySQL、MSSQL、MongoDB和Redis数据库,并进行基本操作。在实际应用中,根据具体需求,还需要处理更复杂的查询、更新、删除等操作,以及事务管理、错误处理等。
2021-06-07 上传
2007-07-08 上传
点击了解资源详情
2020-09-16 上传
2020-12-25 上传
161 浏览量
2018-02-09 上传
点击了解资源详情
weixin_38706782
- 粉丝: 2
- 资源: 928
最新资源
- Oracle10g完全卸载
- C++标准库(难得的PDF版本)
- Java Struts教程.pdf
- 基于分层采样粒子滤波的麦克风阵列说话人跟踪方法.pdf
- 基于迭代中心差分卡尔曼滤波的说话人跟踪方法.pdf
- 工业化硅微机械电容式麦克风的设计与性能计算.pdf
- seo教程(精).pdf
- Delphi7下IntraWeb应用开发详解
- VStation 硬件辅助验证平台在高性能CPU 功能验证中的应用
- 园区网互联与网站建设试题
- 麦肯锡的七步成诗法 - 项目实施方法
- SOA 之实践经验分享
- “园区网互联及网站建设”技能大赛方案
- JDBC与Java数据库编程.pdf
- Premier Press - Focus On Sdl
- C#完全手册,C#的基础教程