【Flask数据库】Column常用参数

本文介绍了Flask数据库模型中Column参数的使用,包括default(默认值)、nullable(是否允许为空)、primary_key(是否为主键)、unique(是否唯一)和autoincrement(是否自增)。默认情况下,nullable为True,如果不指定read_count的默认值,会是null。unique为False,若设置为True,值必须唯一。此外,onupdate参数可在更新数据时自动执行,但仅在更新时生效,首次创建时不使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文章目录


#一、Column常用参数:

class Article(Base):
    __tablename__ = 'article'
    id = Column(Integer,primary_key = True,autoincrement=True)
    read_count = Column(Integer, default = 11)
    create_time = Column(Datetime, default = datetime.now)  #注,now方法不需要执行,会在提交时自动执行

Base.metadata.drop_all()
Base.metadata.create_all()


  • default:默认值
    如添加时不指定read_count的default默认值,则默认为null

  • nullable: 是否为空,True/False
    默认nullable为True,若read_count = Column(Integer,nullable = False),则不指定read_count值时添加数据会报错。

  • primary_key:是否为主键,True/False

  • unique:是否唯一,True/False
    默认为False,若read_count = Column(Integer,unique= True),则read_count值与表内某条数据的值重复时添加数据会报错。

  • autoincrement:是否自增长。

  • onupdate:更新该条数据的时候自动执行
    如:
    update_time = Column(DateTime,onupdate=datetime.now,default = datetime.now)
    注:在第一次创建数据的时候,不会使用onupdate的值,而会使用default值
article = session.query(Article).first()
article.title = 'new title'
session.commit()

  • name:该属性在数据库中的字段名
    当作关键字参数:
    update_time = Column(DateTime,name = '更新时间')
    或当作位置参数,在第一个位置:
    update_time = Column('更新时间',DateTime)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值