sqlalchemy学习(四)ORM model及数据库表的增删改查

本文介绍了使用SQLAlchemy ORM进行数据库操作,包括如何定义Model类与数据库表对应,如何添加记录到数据库,以及如何禁用session的自动提交功能。通过示例代码展示了创建User对象并将其添加到数据库的过程,强调了添加记录后需要显式提交才能完成数据库更新。此外,还提及了查询和更新记录的内容。

目前,许多主流的语言,都实现了对象关系映射(ORM Object Relational Mapper)的库包。ORM的主要功能是将数据库表中的每条记录映射成一个对象。所有的数据库操作,都转化为对象的操作。这样可以增加代码的可读性和安全性。当然性能上会低于直接执行sql命令。本文介绍Sqlalchemy的ORM操作。Sqlalchemy的版本需要在1.1以上。


在执行后面的代码前,请保证已经根据上一篇博文的介绍创建好了名为users的表格。


在ORM中,数据库的每张表,都对应一个model类。而这些model类都需要继承一个名为declarative base class的基类。我们需要通过下面的代码来获得这个基类。


from sqlalchemy.ext.declarative import  declarative_base

BASE = declarative_base()



有了这个基类,就可以为users表定义model类了。

class User(BASE):
    __tablename__ = "users"

    id = Column(INTEGER, primary_key=True)
    name = Column(CHAR(127))
    password = Column(CHAR(127))

上面的代码中,__tablename__类成员变量指明了User类对应的是数据库的users表。后面的3个类成员变量都是Column对象,分别对应表的三个域(field)。

<
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值