七、NodeJs数据库管理
建表
MySQL程序可以使用PHP study集成工具。链接、操作数据库可以使用phpstudy自带的工具也可以使用navicat工具。
SQL语句-增删改查
插入数据
1
insert into 表名(字段名1,字段名2) values(值1,值2);
例如:
1
insert into user(name,description) values('陈浩南','铜锣湾扛把子');
删除数据
1
delete from 表名 where 条件;
条件一定要写,如果不写则会删除该表中所有的数据删除。
例如:
1
delete from user where id>3;
修改数据
1
update 表名 set 字段名1=新值1,字段名2=新值2 where 条件;
条件一定要写,如果不写则会修改数据表中的全部数据
例如:
1
update user set name='子风兄',description='比波波还骚' where id=3;
查询数据
1
select * from 表名 [where 条件];
NodeJs操作数据库
NodeJs链接数据库需要使用模块mysql
。基本结构如下:
1 | var mysql = require("mysql"); |
连接与关闭链接可以不写。
查
1 | connection.query("select * from user", (error, result, fields) => { |
result
fields
其他查询方法
以什么开头
1
select * from hero where heroName like "马%";
以什么结尾
1
select * from hero where heroName like "%韦";
包含什么内容
1
select * from hero where heroName like "%魔%";
并且条件
1
select * from hero where heroName like "%魔%" and isDelete='false';
可用
and
链接多个条件。或条件
1
select * from hero where heroName like "%魔%" or heroName like "%信%";
排序
降序
1
select * from hero where heroName like "%魔%" or heroName like "%信%" order by id desc;
升序
默认为升序
1
select * from hero where heroName like "%魔%" or heroName like "%信%" order by id asc;
分页
倒序情况下拿到前20条数据
1
select * from hero order by id desc limit 0,20;
连表查询
1
select 字段 from 表1 inner join 表2 on 对应关系
1
select * from horder inner join customer on horder.cid = custom.id;
可对两个表设置别名,但是后边也要设置别名。
1
select * from horder h inner join customer c on h.cid = c.id;
也可以只查询某个字段。
1
select h.id,h.oname,c.price,c.id,c.cname,c.age from horder h inner join customer c on h.cid = c.id;
增
1 | let name = "伦哥"; |
其中result
会返回一个对象,fields
返回undefined
。其中affectedRows
表示受影响的行数,如果大于0则表示新增成功。
删
1 | let id = 3; |
改
改与新增类似。
1 | let name = "伦哥"; |
英雄管理系统-添加接口
1 | app.post("/hero/add", upload.single("heroIcon"), (req, res) => { |
英雄管理系统-获取接口
1 | app.get("/hero/all", (req, res) => { |
完整代码
1 | const express = require("express"); |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 小康博客!
评论
TwikooWaline