使用sequelize对数据库进行增删改查
由于本人对于命令比较执着,所以基本都是在命令下操作的,喜欢使用命令的可以使用Cmder,需要安装、配置的可以参考这篇文章:
https://www.cnblogs.com/ziyoublog/p/10416684.html
首先我们需要在自己的文件夹下运行一下cmd
npm init -y
(-y)的主要目的是跳过配置一系列的package.json
其次我们需要安装两个sequelize和mysql2
yarn add sequelize mysql2 -S
或者
npm install sequelize mysql2 -S
接下来我们需要在根目录下新建一个js文件
// index.js
const Sequelize = require('sequelize')
const sequelize = new Sequelize(
'testseq', // 数据库名
'root', // 用户名
'root', // 密码
{
'dialect': 'mysql', // 数据库使用mysql
'host': 'localhost', // 数据库服务器ip
'port': 3306, // 数据库服务器端口
'define': {
'underscored': true
}
}
)
上述操作是为了连接数据库的,可以通过以下代码验证:
// 测试数据库是否连接成功
sequelize
.authenticate()
.then(res => {
console.log('Connection Success!')
})
.catch(err => {
console.log('Connection Error')
})

证明连接成功!
建立一个模板:
// 模板sequelize.define('表名', {}, {})
const User = sequelize.define(
'first', {
id: {
field: 'id', // 字段名
primaryKey: true,
type: Sequelize.INTEGER, // 类型
allowNull: false // 是否允许为空
},
name: {
field: 'name',
primaryKey: true,
type: Sequelize.STRING
},
password: {
field: 'password',
primaryKey: true,
type: Sequelize.STRING,
allowNull: false
}
}, {
tableName: 'first',
timestamps: false,
freezeTableName: true
}
)
首先我们来实现往数据库添加数据:
// 往数据库添加单条数据
User.create({
id: 1,
name: 'test1',
password: '123456'
})

你就可以看到sql语句,接下来看看数据库有没有数据:

证明插入成功
其次就是改操作:
// 修改往数据库数据(通过id去修改name或者password)
User.update({
'name': 'test2'
}, {
'where': { 'id': 1 }
})
sql语句:

数据库:

name成功由test1变成了test2,证明成功!
查所有操作:
// 查询所有
User.findAll().then((res) => {
console.log(res)
})

查单个操作:
// 查询单条
User.findOne({
'where': {
'id': 1
}
}).then(res => {
console.log(res)
})

由于就只有一条数据,所以查出来的结果是一样的, 但是查询单个findOne、全部findAll。
接下来就是删除操作了:
// 删除数据库中某条数据
User.destroy({
'where': {
'id': 1
}
})

数据库:

已经顺利删除了。
以上操作需要在已经建立数据表的情况下。
完整代码:
const Sequelize = require('sequelize')
const sequelize = new Sequelize(
'testseq', // 数据库名
'root', // 用户名
'root', // 密码
{
'dialect': 'mysql', // 数据库使用mysql
'host': 'localhost', // 数据库服务器ip
'port': 3306, // 数据库服务器端口
'define': {
'underscored': true
}
}
)
// 测试数据库是否连接成功
// sequelize
// .authenticate()
// .then(res => {
// console.log('Connection Success!')
// })
// .catch(err => {
// console.log('Connection Error')
// })
// 模板sequelize.define('表名', {}, {})
const User = sequelize.define(
'first', {
id: {
field: 'id',
primaryKey: true,
type: Sequelize.INTEGER,
allowNull: false
},
name: {
field: 'name',
primaryKey: true,
type: Sequelize.STRING,
allowNull: false
},
password: {
field: 'password',
primaryKey: true,
type: Sequelize.STRING,
allowNull: false
}
}, {
tableName: 'first',
timestamps: false,
freezeTableName: true
}
)
// 往数据库添加单条数据
User.create({
id: 1,
name: 'test1',
password: '123456'
})
// // 往数据库添加数据多条数据 遍历
// const addData = [{
// id: 5,
// name: 'yang5',
// password: '123456'
// },
// {
// id: 6,
// name: 'yang6',
// password: '123456'
// }
// ]
// for (let i = 0; i < addData.length; i++) {
// User.create({
// id: addData[i].id,
// name: addData[i].name,
// password: addData[i].password
// })
// }
// 修改往数据库数据(通过id去修改name或者password)
// User.update({
// 'name': 'test2'
// }, {
// 'where': { 'id': 1 }
// })
// 删除数据库中某条数据
// User.destroy({
// 'where': {
// 'id': 1
// }
// })
// 查询所有
User.findAll().then((res) => {
console.log(res)
})
// 查询单条
User.findOne({
'where': {
'id': 1
}
}).then(res => {
console.log(res)
})
使用sequelize对数据库进行增删改查的更多相关文章
- ThinkPHP实现对数据库的增删改查
好久都没有更新博客了,之前老师布置的任务总算是现在可以说告一段落了,今天趁老师还没提出其他要求来更新一篇博客. 今天我想记录的是我之前做项目,自己所理解的ThinkPHP对数据库的增删改查. 首先要说 ...
- Android学习---数据库的增删改查(sqlite CRUD)
上一篇文章介绍了sqlite数据库的创建,以及数据的访问,本文将主要介绍数据库的增删改查. 下面直接看代码: MyDBHelper.java(创建数据库,添加一列phone) package com. ...
- Android 系统API实现数据库的增删改查和SQLite3工具的使用
在<Android SQL语句实现数据库的增删改查>中介绍了使用sql语句来实现数据库的增删改查操作,本文介绍Android 系统API实现数据库的增删改查和SQLite3工具的使用. 系 ...
- Android SQL语句实现数据库的增删改查
本文介绍android中的数据库的增删改查 复习sql语法: * 增 insert into info (name,phone) values ('wuyudong','111') * 删 delet ...
- java jdbc 连接mysql数据库 实现增删改查
好久没有写博文了,写个简单的东西热热身,分享给大家. jdbc相信大家都不陌生,只要是个搞java的,最初接触j2ee的时候都是要学习这么个东西的,谁叫程序得和数据库打交道呢!而jdbc就是和数据库打 ...
- 【转载】通过JDBC对MySQL数据库的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- 利用API方式进行数据库的增删改查
/* 将数据库的增删改查单独放进一个包 */ package com.itheima28.sqlitedemo.dao; import java.util.ArrayList; import java ...
- MySQL数据库学习笔记(十二)----开源工具DbUtils的使用(数据库的增删改查)
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/4 ...
- Asp.net MVC4 使用EF实现数据库的增删改查
EF的使用 步骤: (1)将EF添加到项目:在Model右击添加新建项 找到ADO.NET实体数据模型,接着... (2)实现数据库的增删改查 查询 (因为在Model中已经添加EF实体了 ...
随机推荐
- SpringBoot定时任务@Scheduled
SpringBoot定时任务主要由两个注解完成. @Scheduled加在方法上面. @EnableScheduling加在类上面.可以是Application类,也可以是@Component类,还可 ...
- 给lol人物模型添加动画库(mixamo)中的动画
参考链接:https://www.bilibili.com/video/av61771773/?p=4 作为一个懒人,给提取出来的lol人物模型亲手制作动画是不存在的,但是又想给人物模型应用新的有 ...
- Cesium的Property机制总结[转]
https://www.jianshu.com/p/f0b47997224c 前言 Cesium官方教程中有一篇叫<空间数据可视化>(Visualizing Spatial Data).该 ...
- mqtt 与 MQ 的区别
mqtt 与 MQ 的区别: mqtt:一种通信协议,类似人类交谈中的汉语.英语.俄语中的一种语言规范MQ:一种通信通道,也叫消息队列,类似人类交谈中的用电话.email.微信的一种通信方式json: ...
- 用于KV集群的一致性哈希Consistent Hashing机制
KV集群的请求分发 假定N为后台服务节点数,当前台携带关键字key发起请求时,我们通常将key进行hash后采用模运算 hash(key)%N 来将请求分发到不同的节点上, 后台节点的增删会引起几乎所 ...
- android 连接蓝牙打印机 BluetoothAdapter
android 连接蓝牙打印机 BluetoothAdapter 源码下载地址:https://github.com/yylxy/BluetoothText.git public class Prin ...
- svn忽略obj
于是换成第二种方式 Properties => News => Other => svn:ignore 将你要过滤的文件夹放入文本框里面,此处因为要过滤的是bin和obj所以各占一行 ...
- pycharm 2019.2 安装包失败
简介: 最近使用学生账号注册了pycharm,貌似全家桶都可以免费用了,就升级了pycharm到最新版. 但是在使用包管理,安装包的时候出错了 提示没有匹配的版本,下面还提示一个 --trusted- ...
- Pytest单元测试框架-Pytest环境安装
unittest是python自带的单元测试框架,它封装好了一些校验返回的结果方法和一些用例执行前的初始化操作,使得单元测试易于开展,因为它的易用性,很多同学也拿它来做功能测试和接口测试,只需简单开发 ...
- 浏览器中开发人员工具快速找到dom元素绑定那些JS事件
在web开发过程中难免会遇到让程序员去修改一些js代码东西,例如js的ajax和php等语言的交互等,在这其中你不得不了解点js的事件触发,且随着js的盛行各种插件的事件让程序员眼花缭乱,所以借助一个 ...