目录
1 安装mysql模块
2 建立与mysql的连接
3 执行SQL语句
3.1 查询数据
3.2 插入数据
3.2.1 直接写入SQL语句
3.2.2 使用问号进行占位
3.2.3 使用对象传入
3.3 更新数据
3.3.1 使用问号进行占位
3.3.2 使用对象传入
3.4 删除数据
常见的数据库有下面几个
- MySQL
- Oracle
- SQL Server
- Mongodb
其中MySQL与Mongodb有免费版(社区版),所以这两个数据库用的比较多
MySQL,Oracle,SQL Server属于传统型数据库,三者用法比较类似
Mongodb属于新型数据库,在一定程度上弥补了传统型数据库的缺陷
传统型数据库的数据组织结构与Excel类似,Excel的组织结构是 工作簿,工作表,数据行,数据列,对应到传统型数据库中就是 数据库 database(对应工作簿),数据表 table(对应工作表),数据行 row(对应数据行),字段 field(对应数据列)
mysql的安装可以看一下这个 附录一 windows上安装mysql_Suyuoa的博客-CSDN博客
常见的sql语句 SQL常用语句_Suyuoa的博客-CSDN博客
我们下面主要介绍node.js中的mysql模块
1 安装mysql模块
2 建立与mysql的连接
我们可以通过红框中的方法确认是否与数据库成功连接
- select 1 这个语句没有实质性的作用,只是测试连接状态
我当前返回这个,这表示没有正常连接
如果出现了上面的错误,在确认连接的信息无误后,打开这个
输入密码
use mysql;
alter user 'root'@'localhost' identified with mysql_native_password by '12345678';
- 12345678 是你的root用户密码
flush privileges;
之后再次进行验证,返回下面的内容表明已经与数据库连接成功了
3 执行SQL语句
将上面的 select 1 换成 SQL语句就可以了
我们下面简单写几个例子
3.1 查询数据
使用查询语句result是一个数组
3.2 插入数据
3.2.1 直接写入SQL语句
使用插入语句result是一个对象,对象中包含很多属性。其中result.affectedrRows === 1 表示执行后影响了数据库的行(行数或内容)
我们可以查询一下,发现可以查询到刚刚添加的数据
3.2.2 使用问号进行占位
在query()方法中可以使用?对SQL语句进行占位,用问号进行占位需要在后面给一个数组作为参数表示占位的内容
- 注意数组是有顺序的
3.2.3 使用对象传入
当要传入的信息过多时,我们一个一个写键太麻烦,这个时候可以通过对象传入
对象传入的要求是,你对象的键必须与字段名称一致
3.3 更新数据
3.3.1 使用问号进行占位
可以直接写SQL语句传入,那个我就不做例子了
我现在想将 李六炮 的 status改为1,改之前是下面这样的
- 注意顺序
3.3.2 使用对象传入
可以使用对象传入,当前我想给id为11用户,password改为8765,status改为0
改之前是下面这样的
3.4 删除数据
我们现在想删除id为16的数据,删之前是这样的
- 当只有一个问号占位符时可以不使用数组,直接给值
- 也可以给一个只有一个元素的数组