美文网首页
记一次使用sequelize

记一次使用sequelize

作者: 赫鲁晓夫的玉米棒子 | 来源:发表于2017-11-15 13:34 被阅读0次

    现在已经做了两个个人网站的项目了,其中都有用到sequelize、sqlite3,但是两次使用下来还是不太熟练,所以再次记录下来,一是加深印象;二来要是再记不清楚,也不用再花太多时间来寻找解决方法了。

    第一步:安装npm包

    npm install sqlite3 --save-dev
    npm install sequelize --save
    

    第二步:创建一个model文件夹,在其中创建一个js文件,用来创建和操作数据库。

    创建一个js文件来创建和控制数据库

    第三步:进入teacherEssay.js文件

    第四步:引入必要的模块,并且创建一个空白的数据库

    let path = require('path')
    let Sequelize = require('sequelize')
    

    然后创建一个数据库,由于不是用的mysqlpostgresmssql等数据库,并且也不需要什么用户名什么的,所以就把那些东西全都省去了。

    var sequelize = new Sequelize(undefined, undefined, undefined, {
      host: 'localhost',
      dialect: 'sqlite',
      storage: path.join(__dirname,'./database/teacherEssay.sqlite')
    });//在你需要的地方,创建好这个database文件夹
    
    sequelize
    .authenticate()
    .then(function(err) {
      console.log('Connection has been established successfully.');
    })
    .catch(function (err) {
      console.log('Unable to connect to the database:', err);
    });
    

    现在,保存文件,并且在命令行运行这个文件。

    node teacherEssay.js
    

    现在,在你的database文件夹下就多了一个teacherEssay.sqlite文件,这代表一个数据库就创好了。


    创建好的数据库

    到了这一步,上面的部分代码已经可以不要了,你可以注释掉或者直接删掉了,如下:


    创建数据库完成后的代码

    第五步:定义模型

    虽然创建好了数据库,但是里面还是一片空白,所以现在还要定义模型。

    // 定义模型
    var TeacherEssay = sequelize.define('teacherEssay', {
      EssayTitle:{
        type:Sequelize.STRING
      },
      EssayPreview:{
        type: Sequelize.STRING
      }
    });
    
    // 如果在TeacherEssay.sync()中写入force:true,
    // 那么将在重新创建数据库之前删除原来的数据库
    TeacherEssay.sync().then(function () {
      // Table created
      return TeacherEssay.create({
        EssayTitle: '欢迎来到数学乐园',
        EssayPreview: '这里是数学乐园',
      });
    });
    

    在定义数据类型的时候,可以参考 官方文档
    定义好模型,并创建了第一组数据后,可以通过下面的代码来检查一次是否创建成功。

    TeacherEssay.findAll({raw:true}).then(function(essay){
      console.log(essay)
    })
    

    同样,如果都创建成功了,又有些代码可以不要了:


    有些家伙要注释掉

    第六步:引出模块

    module.exports.TeacherEssay = TeacherEssay
    

    至此,一个简单的数据库就弄好了。完整代码在这
    当然,这只是一个非常简单的数据库,如果想要进阶,可以多看看官方文档

    相关文章

      网友评论

          本文标题:记一次使用sequelize

          本文链接:https://www.haomeiwen.com/subject/mjvcvxtx.html