前言
- MySQL 相信大家都很熟悉,我们要进行数据的持久化保存都需要用到数据库,MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的关系数据库管理系统应用软件之一
- 下面我们就说说怎么用 node 借助
mysql2模块操作数据库
安装
npm install mysql2
基本使用
- 用
mysql2操作数据库首先要连接MySQL - 使用
createConnection方法创建连接 - 参数:
host- 主机名user- 用户名database- 数据库名password- 数据库密码
const mysql = require('mysql2');
const connection = mysql.createConnection({
host: 'localhost',
user: 'root',
database: 'test',
password: 'xxxxxx'
});
- 这个时候可以先执行一下看看连接是否成功,防止后面的操作错误不知道哪错了
同步模块
- 建议使用同步模块
mysql2/promise - 使用方法与
mysql2类似,内置了promise,这样我们可以不用一直写回调好看很多 - 下面我们就直接使用
mysql2/promise
const mysql = require('mysql2/promise');
const connection = await mysql.createConnection({
host: 'localhost',
user: 'root',
database: 'test',
password: 'xxxxxx'
});
增、删、改、查
- 数据库的操作,无非就是增删改查,我们来看看具体如何操作的
查
SELECT 字段 FROM 表名 WHERE 条件语句
- 无条件查询
const [rows, fields] = await connection.execute('SELECT * FROM `表名`', []);
console.log(rows);
limit- 查询条数
const [rows, fields] = await connection.execute('SELECT * FROM `datas` limit start,end', []);
// 使用占位符号 ?
const [rows, fields] = await connection.execute('SELECT * FROM `datas` limit ?,?', [start, end]);
count- 查询总条数
const [rows, fields] = await connection.execute('SELECT count(id) FROM `datas` limit 1,5', []);
// 别名
const [rows, fields] = await connection.execute('SELECT count(id) as count FROM `datas` limit 1,5', []);
增
-
INSERT INTO 表名 (字段一,字段二,字段三) VALUES ("值一","值二","值三") -
表名和字段名建议使用 `` 包住,防止关键字带来的不必要麻烦
await connection.execute('insert into `表名` (`字段1`, `字段2`) values ("值1", "值2")');
- 值也可以通过占位符号
?的方式写
await connection.execute('insert into `表名` (`字段1`, `字段2`) values (?, ?, ?, ?)', [
值1,
值2
]);
删
DELETE FROM 表名 WHERE 条件
await connection.execute('delete from `datas` where id=1');
改
UPDATE 表名 SET 设置的内容 WHERE 条件语句
// 单个
await connection.execute('UPDATE datas SET title=123 WHERE id=1');
// 多个
await connection.execute('UPDATE datas SET title=123,imgUrl=345 WHERE id=1');
条件语句
- AND
- OR
- ORDER BY (DESC/ASC)
- LIMIT
- LIKE
- JOIN ON
- AS
最后
- 这个文章只是做个笔记和大概让大家了解
node怎么操作MySQL - 如果想详细学习数据库还是得去查查更多的
MySQL语句 - 毕竟我只是个做前端的