Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

python peewee

作者:我视你如狗ㄟ   发布日期:2025-04-16   浏览:62

# 导入 Peewee 库
from peewee import *

# 创建一个 SQLite 数据库实例,数据库文件名为 'people.db'
db = SqliteDatabase('people.db')

# 定义一个模型类 Person,继承自 Model 类
class Person(Model):
    # 定义字段,name 为字符型,不允许为空;birthday 为日期型
    name = CharField()
    birthday = DateField()

    # 指定该模型使用的数据库
    class Meta:
        database = db

# 定义另一个模型类 Pet,表示宠物信息
class Pet(Model):
    # 定义字段,owner 为外键,关联到 Person 模型;name 为字符型;animal_type 为字符型
    owner = ForeignKeyField(Person, backref='pets')
    name = CharField()
    animal_type = CharField()

    # 指定该模型使用的数据库
    class Meta:
        database = db

# 连接到数据库并创建表
db.connect()
db.create_tables([Person, Pet])

# 创建一个新的 Person 实例并保存到数据库
uncle_bob = Person(name='Bob', birthday=date(1960, 1, 15))
uncle_bob.save()

# 创建一个新的 Pet 实例并保存到数据库
bob_kitty = Pet.create(owner=uncle_bob, name='Kitty', animal_type='cat')

# 查询数据
grandma = Person.select().where(Person.name == 'Grandma L.')
for person in grandma:
    print(person.name)

# 更新数据
query = Person.update(birthday=date(1945, 3, 1)).where(Person.name == 'Grandma L.')
query.execute()

# 删除数据
query = Pet.delete().where(Pet.owner == uncle_bob)
query.execute()

解释说明:

  1. 导入 Peewee 库:首先导入 Peewee 的相关模块。
  2. 创建数据库实例:创建一个 SQLite 数据库实例 db,指定数据库文件名为 people.db
  3. 定义模型类:定义两个模型类 PersonPet,分别表示人和宠物的信息。每个模型类继承自 Model 类,并定义相应的字段。
  4. 连接数据库并创建表:使用 db.connect() 连接到数据库,并使用 db.create_tables() 创建表。
  5. 插入数据:创建新的 PersonPet 实例,并将其保存到数据库中。
  6. 查询数据:使用 select() 方法查询符合条件的数据,并遍历结果。
  7. 更新数据:使用 update() 方法更新符合条件的数据。
  8. 删除数据:使用 delete() 方法删除符合条件的数据。

希望这段代码和解释对你有帮助!

上一篇:python删除

下一篇:python生成器和迭代器

大家都在看

python时间格式

python ord和chr

python list.pop

python的for i in range

npm config set python

python代码简单

python读取文件夹

python中turtle

python 输出时间

python中list代表什么

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站