在Python中, 最有名的ORM框架是SQLAlchemy.
SQLAlchemy安装 :
pip install sqlalchemy
使用(建立数据库表) :
# 1.创建一个 Class from sqlalchemy.ext.declarative import declarative_base # 2.导入数据库引擎 from sqlalchemy import create_engine # 3.导入表结构关键字 from sqlalchemy import Column,Integer,INT,INTEGER,VARCHAR,String # base是Orm模型的基类 Base = declarative_base() # 创建数据库引擎 engine = create_engine("mysql+pymysql://root:@127.0.0.1:3306/sqlalchemy?charset=utf8") class User(Base): # 表名 __tablename__ = "user" # 表的结构(Column表示字段, Integer表示数字类型, authincrement表示自增) id = Column(Integer,primary_key=True,autoincrement=True) name = Column(String(32),index=True) # 3.将所有的继承Base的Class序列化成数据表 Base.metadata.create_all(engine)
数据的增删改查
1. 增加数据
""" 1. 选中数据库 - 创建数据库引擎, 导入数据库引擎 2. 创建查询窗口, 必须是选中数据库的查询窗口 3. 创建sql语句 4. 运行 """ # 增加单条数据 from sqlalchemy.orm import sessionmaker Session_win = sessionmaker(engine) # 打开查询窗口 db_session = Session_win() user_obj = User(name = "xxx") # 创建sql语句 db_session.add(user_obj) # 将sql语句在查询窗口进行添加 db_session.commit() # 执行全部的sql语句 db_session.close() # 关闭查询窗口 # 增加多条数据 user_obj_list = [User(name="xxx"), User(name="ddd")] db_session.add_all(user_obj_list) db_session.commit() db_session.close()
2. 更新数据
from sqlalchemy.orm import sessionmaker Session_win = sessionmaker(engine) # 打开查询窗口 db_session = Session_win() # 修改单条数据 user_obj = db_session.query(User).filter(User.id == 1).update({"name":"aaa"}) db_session.commit() # query参数确定要操作的表, filter参数表示查询条件, 用来确定要修改的数据 # 修改多条数据 user_obj = db_session.query(User).filter(User.id >= 1).update({"name":"666"}) db_session.commit() # 表示将User表内id>=1的字段的"name"都更改为"666"
3. 查询数据
原文:https://www.cnblogs.com/dong-/p/10402787.html