VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • Python连接SQLite和MySQL数据库的方法

Python连接SQL和MySQL数据库的方法主要有以下几种:
 
1. **使用`sqlite3`库连接SQLite数据库**
 
SQLite是一个轻量级的关系型数据库,它不需要单独的服务器进程,并且允许对数据库文件的直接读写。Python标准库中的`sqlite3`模块提供了与SQLite数据库的接口。
 
示例:
 
 
import sqlite3
 
# 连接到SQLite数据库
# 数据库文件是my_database.db,如果文件不存在,会自动在当前目录创建
conn = sqlite3.connect('my_database.db')
 
# 创建一个Cursor对象,并执行SQL语句
cursor = conn.cursor()
cursor.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
 
# 提交事务
conn.commit()
 
# 关闭连接
conn.close()
2. **使用`pymysql`或`mysql-connector-python`库连接MySQL数据库**
 
对于MySQL数据库,Python没有内置的库,但可以使用第三方库如`pymysql`或`mysql-connector-python`来连接。
 
使用`pymysql`的示例:
 
 
import pymysql
 
# 创建连接
conn = pymysql.connect(host='localhost', user='user', password='passwd', db='db')
 
# 创建一个游标对象 cursor
cursor = conn.cursor()
 
# 定义要执行的SQL语句
sql = "SELECT `id`, `password` FROM `users` WHERE `email`=%s"
 
# 执行SQL语句
cursor.execute(sql, ('webmaster@python.org',))
 
# 获取单条查询结果
result = cursor.fetchone()
print(result)
 
# 关闭游标和连接
cursor.close()
conn.close()
使用`mysql-connector-python`的示例与之类似,只是导入的库和连接方法略有不同。
3. **使用ORM框架(如SQLAlchemy)**
 
ORM(Object-Relational Mapping,对象关系映射)框架允许你使用面向对象的方式来操作数据库,而无需编写大量的SQL语句。SQLAlchemy是Python中最流行的ORM框架之一。
 
使用SQLAlchemy,你可以定义与数据库表对应的Python类,并使用这些类的方法来执行CRUD(创建、读取、更新、删除)操作。
 
示例:
 
 
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
 
Base = declarative_base()
 
class User(Base):
    __tablename__ = 'users'
 
    id = Column(Integer, primary_key=True)
    name = Column(String)
    age = Column(Integer)
 
# 创建引擎和会话
engine = create_engine('sqlite:///my_database.db')
Session = sessionmaker(bind=engine)
session = Session()
 
# 创建表
Base.metadata.create_all(engine)
 
# 添加数据
new_user = User(name='Alice', age=25)
session.add(new_user)
session.commit()
 
# 查询数据
users = session.query(User).all()
for user in users:
    print(user.name, user.age)
 
# 关闭会话
session.close()
请注意,以上只是简单的示例,实际应用中可能需要处理更复杂的逻辑和异常。在选择连接数据库的方法时,应根据项目需求和个人偏好来选择最适合的方法。


最后,如果你对vb.net语言还有任何疑问或者需要进一步的帮助,请访问https://www.xin3721.com 本站原创,转载请注明出处:https://www.xin3721.com/Python/python49169.html


相关教程