文章分类 - MySQL
摘要:总体分层 连接层 是用来与客户端进行连接的一个服务,主要完成一些类似连接的处理,授权认证及相关的安全方案的处理,在该层上还引入了连接池的概念 服务层 提供核心的服务功能,如 SQL 接口,完成缓存的查询,SQL 的分析和 SQL 的优化部分及内置函数的执行,所有跨存储引擎的功能都在这一层实现,服务器
阅读全文
摘要:首先需要创建一个 Node 项目 npm init -y 然后安装 Sequelize npm install sequelize 导入 Sequelize const Sequelize = require('sequelize'); 配置连接信息: 第一个参数:要操作的数据库名称 第二个参数:数
阅读全文
摘要:Sequelize基本使用 官方文档:https://sequelize.org/ 数据库连接池 默认情况下有一个人要使用数据库, 那么就必须创建一个连接 默认情况下有一个人不用数据库了, 为了不占用资源, 那么就必须销毁一个连接 但是频繁的创建和销毁连接是非常消耗服务器性能的, 所以为了提升服务器
阅读全文
摘要:什么是Sequelize Sequelize 是一个基于 Promise 的 NodeJS ORM 模块 什么是ORM ORM(Object-Relational-Mapping)是对象关系映射 对象关系映射可以把 JS 中的类和对象, 和数据库中的表和数据进行关系映射 映射之后我们就可以直接通过类
阅读全文
摘要:Node操作MySQL 我们都知道操作MySQL数据库就是连接MySQL服务器, 给MySQL服务器发送指令 在NodeJS中我们可以借助第三方库来连接MySQL服务器, 给MySQL服务器发送指令 连接MySQL操作MySQL有两种方式如下: MySQL驱动库 https://www.npmjs.
阅读全文
摘要:往数据库里存储一万条数据 drop table if exists stu; CREATE TABLE `stu` ( `id` int NOT NULL AUTO_INCREMENT, `name` varchar(20) DEFAULT NULL, `age` int DEFAULT NULL,
阅读全文
摘要:自定义函数 自定义函数和存储过程很像, 只不过自定义函数不需要手动通过call调用 而是和其它的聚合函数一样会在SQL语句中自动被调用 例如: select avg(score) from stu; 例如: select count(*) from stu where age >=18; 创建自定义
阅读全文
摘要:存储过程 存储过程和其它编程语言的函数很像, 可以用于封装一组特定功能的SQL语句集 用户通过call 存储过程的名称()来调用执行它 存储过程基本语法 drop table if exists stu; CREATE TABLE `stu` ( `id` int NOT NULL AUTO_INC
阅读全文
摘要:预处理 所谓的预处理技术,最初也是由MySQL提出的一种减轻服务器压力的一种技术! 传统MySQL处理流程 首先在客户端准备SQL语句 select * from stu where id = 1; select * from stu where id = 2; 发送SQL语句到MySQL服务器 M
阅读全文
摘要:视图基本概念 视图本质就是将结果集缓存起来 由于结果集是一张虚拟的表, 所以视图也是一张虚拟的表 由于结果集是建立在表的基础上的, 所以视图也是建立在表的基础上的 视图的作用 视图可以用来简化SQL语句 视图可以用来隐藏表的结构 视图可以用来提升数据安全性 创建视图语法 create view 视图
阅读全文
摘要:事务基本概念 MySQL中的事务主要用于处理容易出错的数据 事务可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行 事务用来管理 insert,update,delete 语句 MySQL中只有使用了 Innodb 数据库引擎的表才支持事务 事物语法 开启事务 star
阅读全文
摘要:准备测试数据 drop table if exists stu; create table stu( id int auto_increment primary key, name varchar(20), age int ); insert into stu values (null, 'BNTa
阅读全文
摘要:单表查询 drop table if exists person; create table person( id int primary key, name varchar(20) ); insert into person values (1, 'BNTang'); insert into pe
阅读全文
摘要:什么是数据的完整性 保证保存到数据库中的数据都是正确的 🐤如何保证数据完整性 数据的完整性可以分为三类:实体完整性、域完整性、参照完整性 无论是哪一种完整性都是在创建表时给表添加约束即可 实体完整性 🐤什么是实体 表中的一行数据就是一个实体(entity) 🐸如何保证实体完整性 保证实体完整性
阅读全文
摘要:MySQL为什么要提供数据类型 如果没有数据类型,那么MySQL就不知道需要分配多大的存储空间来存储你的数据 过大会浪费会造成资源浪费,体积变大效率变低,过小可能导致数据溢出不能完整的保存数据 所以MySQL提供数据类型的目的是为了让我们合理的分配存储空间,降低数据库的体积 为了让我们合理的分配存储
阅读全文
摘要:下载Navicat http://www.navicat.com.cn 点击产品 点击免费试用 Navicat安装 如下有的链接可能破解不了也有可能失效了,但是其中总会有一个可以使用的,自行打开自行破解即可。 https://baijiahao.baidu.com/s?id=166903589327
阅读全文
摘要:插入数据 insert into 表名 (字段名称1, 字段名称2) values (值1, 值2); 🐤创建表 create table if not exists stu( id int, name varchar(20) ); insert into stu (id, name) value
阅读全文
摘要:🐤注意点 在对数据库的表进行操作的时候(增删改查),都必须先告诉MySQL我们要操作的是哪一个数据库 use 数据库名称; use bntang; 查看数据库中有哪些表 show tables; 查看指定表结构 desc 表名; desc stu; 创建表 create table 表名( 字段名
阅读全文
摘要:查看数据库全局默认编码 show variables like 'character_set_%'; 查看某个数据库编码 show create database person; 特殊数据库名称处理 create database if not exists `create` charset=utf
阅读全文