【Vue3+Express实战】Sequilze连接Mysql

HOST: “localhost”,

USER: “root”,

PASSWORD: “root”,

DB: “testdb”,

dialect: “mysql”,

};

连接mysql

上面我们已经写好了数据库的配置文件,下面我们就来编写一个通用的Sequlize实例!

在app文件夹下创建models文件,然后新建index.js。下面开始编写连接数据库的代码:

const dbConfig = require(“…/config/db.config.js”);

const Sequelize = require(“sequelize”);

const sequelize = new Sequelize(dbConfig.DB, dbConfig.USER, dbConfig.PASSWORD, {

host: dbConfig.HOST,

dialect: dbConfig.dialect,

});

const db = {};

db.Sequelize = Sequelize;

db.sequelize = sequelize;

module.exports = db;

这里请注意:我们最后又创建了一个db 对象,定义这个db对象的原因是,我们可以将Sequelize类和sequelize都挂载到db上,进行一个统一的管理,同时还可以将下面要创建的模型都挂载到db上!

创建课程模型

我们已经可以正常的连接数据库了,那连接数据库之后,我们是不是需要在testdb创建表!之前我们可能是需要编写sql脚本或者使用可视化工具创建表,添加字段。不过Sequelizes可以通过定义模型,同步模型到数据库中,从而自动的在数据库中创建表以及字段。也就是说Sequelizes的模型对应数据库中的表!

在Sequelizes中有两种定义数据模型的方式。

这里我们使用define方式,defined是通过Sequlize实例来调用的。

我们定义了一个函数,这个函数接受sequelize,实例 Sequelize类两个参数,然后在函数内部通过调用实例上define函数来创建一个Tutorial实例。

module.exports = (sequelize, Sequelize) => {

const Tutorial = sequelize.define(“tutorial”, {

title: {

type: Sequelize.STRING

},

description: {

type: Sequelize.STRING

},

published: {

type: Sequelize.BOOLEAN

}

});

return Tutorial;

};

虽然我们只定义了title,description published 三个字段,但是Sequelize 将会自动这些列将自动生成:idcreatedAtupdatedAt

然后,我们在app/models/index.js,中调用这个函数。

db.Sequelize = Sequelize;

db.sequelize = sequelize

db.tutorials = require(“./tutorial.model.js”)(sequelize, Sequelize);

module.exports = db;

这里我们再来说一下,定义db对象的好处。

  1. 将Sequelize类, sequelize实例挂在db上,这样我们在其他文件中用到Sequelize类, sequelize实例,是只需要import db就可以,不需要引入两次

  2. 可以将模型都挂在到db。这里只是一个模型,如果100个模型,某个文件,我们可能会需要引入99个模型,那么就要写99个import,但是你都挂在到db上,就只需要写一次import。

难道这样就够了吗?不,远远不够!

提前多熟悉阿里往年的面试题肯定是对面试有很大的帮助的,但是作为技术性职业,手里有实打实的技术才是你面对面试官最有用的利器,这是从内在散发出来的自信。

备战阿里时我花的最多的时间就是在学习技术上,占了我所有学习计划中的百分之70,这是一些我学习期间觉得还是很不错的一些学习笔记

我为什么要写这篇文章呢,其实我觉得学习是不能停下脚步的,在网络上和大家一起分享,一起讨论,不单单可以遇到更多一样的人,还可以扩大自己的眼界,学习到更多的技术,我还会在csdn、博客、掘金等网站上分享技术,这也是一种学习的方法。

今天就分享到这里了,谢谢大家的关注,以后会分享更多的干货给大家!

![阿里一面就落马,恶补完这份“阿里面试宝典”后,上岸蚂蚁金服](https://upload-images.jianshu.io/upload_images/24195226-94ca5a0aa5ed2850?imageMogr2/auto-

需要文中资料的朋友,可以加我\/信获取:vip1024b 备注Java

orient/strip%7CimageView2/2/w/1240)

阿里一面就落马,恶补完这份“阿里面试宝典”后,上岸蚂蚁金服

image.png

.jpeg)(title-需要文中资料的朋友,可以加我/信获取:vip1024b 备注Java)]

orient/strip%7CimageView2/2/w/1240)

[外链图片转存中…(img-6iYa7obK-1716343132798)]

[外链图片转存中…(img-20YXolNK-1716343132799)]

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值