sequelize-cli 使用记录

栏目: 数据库 · 发布时间: 7年前

内容简介:注意:执行上面命令,会生成以下几个文件夹:将

0. 初始化项目

$ npm init

1. 安装 sequelize-cli

$ npm install --save sequelize-cli sequelize mysql2

注意: sequelize-cli 是要依赖于 sequelizemysql2 的。

2. 生成 sequelize 目录

$ node_modules/.bin/sequelize init

执行上面命令,会生成以下几个文件夹:

  • config :包含一个 config.json 文件
  • models :包含一个 index.js 文件
  • migrations :空文件夹
  • seeders :空文件夹

3. 配置连接数据库的信息

config/config.json 文件里的信息修改为本机数据库的信息:

{
  "development": {
    "username": "root",
    "password": "123456",
    "database": "database_development",
    "host": "127.0.0.1",
    "dialect": "mysql"
  },
  "test": {
    "username": "root",
    "password": "123456",
    "database": "database_test",
    "host": "127.0.0.1",
    "dialect": "mysql"
  },
  "production": {
    "username": "root",
    "password": "123456",
    "database": "database_production",
    "host": "127.0.0.1",
    "dialect": "mysql"
  }
}

注意: password 字段是字符串类型,切勿设置为数字类型。

4. 创建数据库

$ node_modules/.bin/sequelize db:create

执行上面命令,会一句 config/config.json 文件所配置的创建 database_development 数据库。

sequelize-cli 使用记录

5. 生成模型文件和迁移文件

$ node_modules/.bin/sequelize model:generate --name User --attributes firstName:string,lastName:string,email:string

执行上面命令会:

  • models 文件夹里生成一个 user.js 文件
  • migrations 文件夹里生成一个 20190210132709-create-user.js 文件

注意: 这里,我把 20190210132709-create-user.js 文件里的 createdAtupdatedAt 两个字段中的 allowNull 改成了 true ,避免在后面的执行种子文件操作中报错。

6. 执行迁移

$ node_modules/.bin/sequelize db:migrate

执行上面命令,会在 database_development 数据库中创建 sequelizemeta 表和 users 表。

sequelize-cli 使用记录

users 表里面长这样:

sequelize-cli 使用记录

7. 生成种子文件

$ node_modules/.bin/sequelize seed:generate --name demo-user

执行上面命令,会在 seeders 文件夹里生成一个 20190210132832-demo-user.js 文件,然后我们将该文件修改成以下这样:

'use strict';

module.exports = {
  up: (queryInterface, Sequelize) => {
    return queryInterface.bulkInsert('Users', [{
        firstName: 'John',
        lastName: 'Doe',
        email: 'demo@demo.com'
      }], {});
  },

  down: (queryInterface, Sequelize) => {
    return queryInterface.bulkDelete('Users', null, {});
  }
};

8. 执行种子文件

$ node_modules/.bin/sequelize db:seed:all

执行上面命令,会在 database_development 数据库的 users 表中插入一条数据。

sequelize-cli 使用记录

9. 总结

至此,我们成功使用 sequelize-cli 创建数据库和表,并插入默认数据了。更多详细信息,请参阅 这里


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Don't Make Me Think

Don't Make Me Think

Steve Krug / New Riders Press / 18 August, 2005 / $35.00

Five years and more than 100,000 copies after it was first published, it's hard to imagine anyone working in Web design who hasn't read Steve Krug's "instant classic" on Web usability, but people are ......一起来看看 《Don't Make Me Think》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试