sequelize和express实现mysql增删改查

  1. npm安装好sequelize再连接数据库
//创建一个连接数据库的文件
const Sequelize = require('sequelize');
//括号里面是数据库的名字,用户名,密码
const mysql_sequelize = new Sequelize("answer",'root','root',{
    host:'localhost',
    port:'3306',
    dialect:"mysql",
})

module.exports = mysql_sequelize;
  1. 创建一个和表相关的数据模型
const Sequelize = require('sequelize');
const db = require('../db/db')
//define里面的字段需要对应表里面的字段
const users = db.define('sider',{
    id: {
                allowNull: false,
                autoIncrement: true,
                primaryKey: true,
                type: Sequelize.INTEGER,//整型
                field:'id'
              },
              father_title:{
                allowNull:false,
                type:Sequelize.STRING//相当于字符串
              },
              child_vlaue:{
                allowNull:false,
                type:Sequelize.STRING
              }
              
},
{
    tableName:"sider",
      timestamps: false
      }
)

module.exports  =users

3.路由文件中使用

//这里是异步,需要await一下
const sider = require('../db/model')//数据模板文件
router.get("/a", async function(req,res){
  let user =  await sider.count({
    where:{
      id:{
      //这个是要找出大于6的id数据
        [Op.gt]:6
      }
    }
        });
          console.log(user)
        res.send({
          user
        })
})
router.get('/add',function(req,res){
//create可以直接新增
  let user = sider.create({
    father_title:"1",
    child_vlaue:"2"
  })
  res.send(user)
})
//增加多个bulkCreate
router.get("/moreadd",function(req,res){
  let user = sider.bulkCreate([
    { father_title:"1",child_vlaue:"2"},
    {father_title:"1",child_vlaue:"2"}
  ])
  res.send(user)
})

5.删

//destroy配合where删除数据
router.get("/drop",async function(req,res){
  let user =await sider.destroy({
    where:{
      id:1
    }
  })
  res.send({
    user
  })
})

6.改

router.get("/update",async function(req,res){
  //返回1就修改成功,返回0就是修改失败
  let user =await sider.update({father_title:"r"},{
    where:{
      id:1
    }
  })
  res.send({
    user
  })
})

7.查

router.get("/findone",async function(req,res){
  //查单个
  let user =await sider.findOne({
    where:{
      id:2
    }
  })
  res.send({
    user
  })
})

router.get("/findAll",async function(req,res){
  //查全部
  let user =await sider.findAll({
  })
  res.send({
    user
  })
})
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值