• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
ellaha
博客园    首页    新随笔    联系   管理    订阅  订阅
ORM模型介绍
  • O(objects):类和对象
  • R(Relation):关系,关系数据库表格
  • M(Mapping):映射

  •  ORM框架功能
    • 建立模型类和类之间的对应关系,允许我们通过面向对象的方式来操作数据库
    • 根据设计的模型类生成数据库中的表格
    • 通过方便的配置可以进行数据库的切换
  • 数据库的字段类型
    • Mysql常用数据类型
      • 整数:int bit
      • 小数:decimal(decimal表示浮点数,如decimal(5,2)表示共存5位数,小数占2位)
      • 字符串:varchar,char(char不可变长度,varchar可变长度)
      • 日期时间:date,time datetime
    • ORM模型中对应的字段(下面为django的ORM模型中选取的几个字段)
      • BooleanField:布尔类型,值为True或False
      • CharField:字符串,参数max_length表示最大字符个数
      • IntegerField:整数
  • 模型类案例

  • 描述器实现ORM模型中的字段类型
    • 实现字符串字段

二,ORM模型的实现思路

在python的Django中以及Flask-SQLAlchmey中操作数据库时会用到ORM模型,通常元类用来创建API是非常好的选择,使用元类的编写很复杂但使用者可以非常简洁的调用API

  • ORM:模型即对象通过关系来映射到数据库
    • O(objects):类和对象
    • R(Relation):关系,关系数据库表格
    • M(Mapping):映射
  • 实现技术点分析
    • 类对应表,创建表时需要自动生成对应的数据表
    • 对象对应一条数据,创建一个对象,需要在数据表中添加一条数据
    • 属性对应字段,修改对象属性的同时需要修改数据库中对应的字段
  • 实现步骤
    • 定义字段类型
    • 定义模型类,由于类对应数据表,那么定义模型类时应当在数据库中创建对应的数据表
posted on 2021-01-08 06:32  ellaha  阅读(1255)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3