Node.js第九章 数据库
目录
1. 数据库的基本概念
1.1 数据库的概念
数据库是用来组织、存储、管理数据的仓库。用户可以对数据库的数据进行增加、删除、修改、查询的操作。
1.2 数据库的分类
常见数据库:
- MySQL : 流行度最高的数据库关系型数据库(社区版免费、企业版收费)
- SQL Server:(收费)关系型数据库
- Oracle:(收费)关系型数据库
- Mongodb:非关系型数据库(社区版免费、企业版收费)
1.3 数据组织结构
传统型数据库的数据组织结构包括几个部分:数据库DataBase(DB)、数据表DataTable(DT)、数据行row、字段file
2. MySQL使用介绍
2.1 安装MySQL和MySQL Workbench
2.2 MySQL的基本使用
1. 连接:打开MySQL Workbench连接数据库、输入密码
2. 界面组成部分:
3. 创建数据库
4. 创建数据表
5. 向数据表插入数据
2.3 使用SQL管理数据库
1.SQL的概念
SQL是一门编程语言,可以用来操作数据库的数据,包括查询数据、增加数据、删除数据、修改数据。
2. SELECT语句
SELECT语句用于从表中查询数据,执行的结果被存储在一个结果表中,语法格式如下:
-
select * from 表名称 // * 代表查询所有的列
-
-
select 列名称 from 表名称 // 查询指定的列数据
把users表里面所有的数据都查询出来:
从users表中查询用户名、密码:
3. INSERT INTO语句
向表中插入数据,语法格式:
-
insert into table_name(列名1,列名2) values (values1, values2);
-
// 列名和值要一个一个地对应
4. UPDATE语句
update用于修改表中的数据
更新多个列,用逗号分隔即可:
5. DELETE语句
delete from 表名 where 列名 = 值 // 注意要加where条件、否则可能把整个表的数据删除了
6. where子句
运算符:
7. AND OR运算符
and运算符:同时满足多个条件
or: 满足条件之一即可
8. ORDER BY
order by升序、降序的子句,默认是升序排序,或者order by后面加 ASC,降序排序就在order by后面加desc
多重排序
9. count(*)函数
count(*)函数用于返回查询结果的总数据条数,语法格式如下:
select count(*) from 表名
10. AS
使用as起别名
3. 在项目中使用MySQL
3.1 安装和配置MySQL模块
前提: 已经安装了MySQL软件、视化软件MySQL WorkBench,并且设置了用户名、密码、和创建了指定的数据库。
1. node安装mysql第三方包
npm install mysql
2. 配置mysql模块
3. 测试配置是否正常
其中select 1这个语句没有实质作用,这里只是去测试配置是否正常
3.2 操作数据
1. 查询数据
-
const mysql = require('mysql');
-
-
const db = mysql.createPool({
-
host: '127.0.0.1'
-
user: 'root',
-
password: 'admin123',
-
database: 'my_db_01'
-
})
-
-
const sqlStr = 'select * from users';
-
-
db.query(sqlStr, (err, res) => {
-
if(err){
-
return err.message;
-
}
-
console.log(res);
-
})
执行结果:查询的数据数组
如果是insert into语句,则返回的result是一个对象,可以通过result.affectRows属性值是否为1来判断插入是否成功。如果是select语句,则返回的result是个数组。
插入数据的快捷方式:
定义对象的键值对时和表的列名对应,可快速插入数据。
2. 更新数据:
3. 删除数据:
4. 标记删除:
使用DELETE语句,会把真正的数据从表中删除掉,为了保险起见,推荐使用标记删除掉形式,来模拟删除的动作,所谓的标记删除,就是在表中设置类似于status这样但状态字段,来标记当前这条数据是否被删除。
用户执行删除的动作时,我们并没有执行DELETE语句把数据删除掉,而是执行了UPDATE语句,将这条数据对应的status字段标记为删除即可。
这篇好文章是转载于:学新通技术网
- 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
- 本站站名: 学新通技术网
- 本文地址: /boutique/detail/tanhgfkhkc
-
photoshop保存的图片太大微信发不了怎么办
PHP中文网 06-15 -
《学习通》视频自动暂停处理方法
HelloWorld317 07-05 -
word里面弄一个表格后上面的标题会跑到下面怎么办
PHP中文网 06-20 -
Android 11 保存文件到外部存储,并分享文件
Luke 10-12 -
photoshop扩展功能面板显示灰色怎么办
PHP中文网 06-14 -
微信公众号没有声音提示怎么办
PHP中文网 03-31 -
excel下划线不显示怎么办
PHP中文网 06-23 -
excel打印预览压线压字怎么办
PHP中文网 06-22 -
TikTok加速器哪个好免费的TK加速器推荐
TK小达人 10-01 -
怎样阻止微信小程序自动打开
PHP中文网 06-13