现在已经做了两个个人网站的项目了,其中都有用到sequelize、sqlite3,但是两次使用下来还是不太熟练,所以再次记录下来,一是加深印象;二来要是再记不清楚,也不用再花太多时间来寻找解决方法了。
第一步:安装npm包
npm install sqlite3 --save-dev
npm install sequelize --save
第二步:创建一个model文件夹,在其中创建一个js文件,用来创建和操作数据库。
第三步:进入teacherEssay.js文件
第四步:引入必要的模块,并且创建一个空白的数据库
let path = require('path')
let Sequelize = require('sequelize')
然后创建一个数据库,由于不是用的mysql
、postgres
、mssql
等数据库,并且也不需要什么用户名什么的,所以就把那些东西全都省去了。
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