博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sequelize模型
阅读量:4493 次
发布时间:2019-06-08

本文共 1529 字,大约阅读时间需要 5 分钟。

model表示数据库中的表,有时它也会被称为"模型"或“工厂”。Model不能通过构造函数创建,只能通过sequlize.define方法来定义或通过sequlize.import导入。通过define定义一个model,就相当于定义了一种模型与数据表之间 的映射关系,通过模型可以实现对表记录的增删改查等操作。

Model的API

1. removeAttribute() 移除属性

2. sync() 同步模型到数据库

3. drop() 删除数据库中的表

4. schema() 制定schema

5. getTableName() 获取表名

6. addScope() 添加限制范围

7. scope() 应用限制范围

8. findAll() 查询多条数据

9. findById() 通过id查询单条数据

10. findOne() 查询单条数据

11. aggregate() 聚合查询

12. count() 统计查询结果数

13. findAndCount() 分页查询

14. max() 查询最大值

15. min() 查询最小值

16. sum() 求和

17. build() 创建新实例

18. create() 创建保存新实例

19. findOrInitialize() 查找或初始化

20. findOrCreate() 查找或创建

21. describe() 查询表信息

定义描述

1. 定义模型Model和表之间的映射关系使用define方法。 定义时sequelize会自动为其添加createdAt和updatedAt两个属性(相当于表中的字段),这样 你就可以知道数据什么时候插入了数据库和什么时候进行了更新。

2. 设置allowNull选项为false后,会为列添加NOT NULL非空限制

模型的使用

1. Data retrueval / Finders 数据索引/查找

查找方法是为了从数据库中查询数据,这些方法不是返回原始数据对象,而是返回模型实例。因会其返回的模型实例,

 ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------

model是一种与数据库中表与数据库中表关系的描述对象,它通过sequlize.define方法定义或通过sequlize.import导入创建实例的对象。通过Model进行数据查询时,我们可以实现类似在数据库中直接使用SQL语句的查询、排序、分组、别名、链接查询等

1. attribute 属性与查询字段

查询时,如果只需要查询模型的部分属性,可以通过在查询选项中制定attributes实现,它是一个数组参数,在数组中指定要查询的属性即可,这些要查询的属性就是要在数据库查询的字段。

当需要查询所有字段并对某一字段使用聚合查询时,而只需要以对象的形式传入Attributes并添加include子属性即可

全部查询时,可以通过exclude子属性来排除不需要查询的字段(不需要查询的字段)

2. where  指定筛选条件

在模型的操作中,可以指定一个where选项以制定筛选条件,where是一个包含属性/值对对象,sequlize会根据此对象产生查询语句的筛选条件

 

转载于:https://www.cnblogs.com/renxiao1218/p/9531512.html

你可能感兴趣的文章
Hadoop下大矩阵乘法Version2
查看>>
iPhone内存溢出——黑白苹果
查看>>
Struts2学习笔记(十二) 类型转换(Type Conversion)(下)
查看>>
tcpdump学习
查看>>
局域网内传输文件速度慢
查看>>
Linux的核心版本(摘抄)
查看>>
CASE表达式
查看>>
zkw线段树
查看>>
作业1226
查看>>
mainline.js主线
查看>>
fseek()
查看>>
Python学习笔记——PyQt控件中文字居中显示
查看>>
JAVA环境下利用solrj二次开发SOlR搜索的环境部署常见错误
查看>>
Beta阶段敏捷冲刺前准备
查看>>
mini web框架-3-替换模板
查看>>
Siamese Network简介
查看>>
svg学习(三)rect
查看>>
ruby 模块 的引入
查看>>
CI Weekly #21 | iOS 持续集成快速入门指南
查看>>
Jquery获取输入框属性file,ajax传输后端,下载图片
查看>>