首先,来说说数据持久化的理解,服务端数据持久化技术就是通过服务连接到数据库,将大量的数据通过SQL语句或其他指令存入到数据库,并可通过语句增删改查数据库。
MySQLMySQL的安装
- 1.在官网中选择MySQL Community Server 进行下载,下载完后运行安装包,配置用户名和密码。
- 2.打开 finder(访达),查看/usr/local/mysql/bin 目录下是否有 mysql;
- 3.终端打开指定位置:cd /usr/local/mysql/bin
- 4.接着输⼊入 vim ~/.bash_profile,然后在此⽂文件中添加 mysql 的 bin ⽬目录,添加这句话:
PATH:$PATH:/usr/local/mysql/bin复制代码
并退出vim输入模式;
- 5.接着输⼊ source ~/.bash_profile,回车,以使刚才的配置⽣生效。
mysql 的安装和配置已经完成!
接着需要安装数据库可视化工具MySQL Workbench,下载地址同上,找到workbench下载并运行安装包,注意登录时用户名和密码与数据库设置一致。
连接MySQL数据库
安装mysql2 : npm i mysql2 -S
通过如下的代码连接,并通过execute方法执行对应语句操作数据库:
const mysql = require('mysql2/promise');// 连接配置const cfg = {host: "localhost",user: "root", // 你的用户名password: "password", // 你的密码database: "database" // 数据库名称 }// 建立连接const connection = await mysql.createConnection(cfg);// 创建test表let ret = await connection.execute(` CREATE TABLE IF NOT EXISTS test( id INT NOT NULL AUTO_INCREMENT, message VARCHAR(45) NULL, PRIMARY KEY (id)) `)console.log('create', ret);// 连接关闭connection.end();复制代码
Sequelize--更便捷的数据库操作
利用Sequelize这个中间件可以不用和sql语句打交道,更便捷的实现数据库操作,其可以支持多种数据库。 安装:npm i sequelize mysql2 -S 基本使用如下:
(async () => {const Sequelize = require("sequelize");// 连接数据库const sequelize = new Sequelize('database', 'root', "123456", {host: "localhost",dialect: "mysql"});// 定义模型const Fruit = sequelize.define('Fruit', {name: { type: Sequelize.STRING(20), allowNull: false },price: { type: Sequelize.FLOAT, allowNull: false },stock: {type: Sequelize.INTEGER, defaultValue: 0} })let ret = await Fruit.sync();console.log('sync', ret)// 增ret = await Fruit.create({name: "香蕉",price: 3.5})console.log('create', ret)// 查ret = await Fruit.findAll();console.log('find', JSON.stringify(ret));// 改await Fruit.update({ price: 5 }, { where: { name: "香蕉" } })// 条件查询const Op = Sequelize.Op; ret = await Fruit.findAll({where: { price: { [Op.lt]: 5, [Op.gt]: 2 } } })console.log(ret) })()复制代码
由此可见所有操作都是传入一个配置对象,可以说是相当方便了,想了解更多sequelize的操作可以查看API文档:www.nodeclass.com/api/sequeli…