Wener Notes

sequelize

约 2 分钟阅读
bash
# v7
npm add @sequelize/core
Packages@sequelize/corenpm Package@sequelize/coreNPM
TypeScript
export enum QueryTypes {
  SELECT = 'SELECT',
  INSERT = 'INSERT',
  UPDATE = 'UPDATE',
  BULKUPDATE = 'BULKUPDATE',
  BULKDELETE = 'BULKDELETE',
  DELETE = 'DELETE',
  UPSERT = 'UPSERT',
  VERSION = 'VERSION',
  SHOWTABLES = 'SHOWTABLES',
  SHOWINDEXES = 'SHOWINDEXES',
  DESCRIBE = 'DESCRIBE',
  RAW = 'RAW',
  FOREIGNKEYS = 'FOREIGNKEYS',
  SHOWCONSTRAINTS = 'SHOWCONSTRAINTS',
}

builkUpsert

TypeScript
Model.bulkCreate([], { updateOnDuplicate: ['user_id', 'token', 'created_at'] });

sequelize-cli

bash
npm add sequelize
npm add -D sequelize-cli

# config/config.json
# models
# migrations
# seeders
npx sequelize init

# 生成模型
# 会生成 migrations
npx sequelize model:create --name User --attributes name:string,state:boolean,birth:date,card:integer,role:enum:'{Admin,Guest}'
Packagessequelizenpm PackagesequelizeNPMsequelize-clinpm Packagesequelize-cliNPM
config/config.json
{
  "development": {
    "username": "root",
    "password": null,
    "database": "database_development",
    "host": "127.0.0.1",
    "dialect": "mysql"
  }
}
  • --env
    • development
    • test
    • production
  • --url

API

  • order

The number NaN cannot be converted to a BigInt because it is not an integer

关联信息

反向链接、本文链接的其他页面和外部资料。

反向链接

  • Nodejs Awesome
    笔记 · sequelize/sequelize

    最好选择 TypeScript 开发的或支持 TypeScript 的 · TypeScript 的 decorator 比 Java 的 Annotation 弱得多 · 不支持获取字段实际类型信息 - 因为不存在这样的信息 · 最近一两年 (2020-2021),可能是因为 Go 和 Rust 的盛行,导致 Nodejs 的后端开发弱化了,很多项目...

References

GitHub20 条
其他外链3 条
最近更新commit 798c571Edit

On this page