文章分类 - 后端
摘要:oracle中sql的执行流程 在oracle中采用了共享池来判断sql语句是否存在缓存和执行计划,这一步让我们知道应该采用硬解析还是软解析。 1.语法检查:检查sql拼写是否正确,如果不正确,Oracle会报语法错误。 2.语义检查:检查sql中的访问对象是否存在,比如说我们在写select语句的
阅读全文
摘要:MySQL8中SQL执行原理 1.确认profiling是否开启,开启的话,mysql会收集sql执行时所使用的资源情况。 mysql> select @@profiling; mysql> show variables like 'profiling'; profiling=0 代表关闭,我们需要
阅读全文
摘要:sql执行流程 mysql具体执行流程 1.查询缓存:server如果再查询缓存中发现了这条sql语句,就会直接将结果返回给客户端;如果没有,就进入到解析器阶段。需要说明的是,因为查询缓存往往效率不高,所以在mysql8.0以后就抛弃了这个功能。 mysql拿到一个请求后,会先查询缓存看看,之前是不
阅读全文
摘要:mysql逻辑架构 服务端处理客户端请求 5.7执行流程 获取sql--〉创建连接--〉接收到sql--〉查询缓存 〉通过解析器:解析语法 〉使用优化器:对sql进行优化 〉调用api 〉加载到内存中 〉进行缓存--〉返回结果 mysql三层架构 第一层:连接层 系统访问mysql服务器前,建立TC
阅读全文
摘要:触发器 mysql的触发器和存储过程一样,都是嵌入到mysql服务器的一段程序。 触发器是由事件来触发某个操作,这些事件包括INSERT、UPDATE、DELETE事件。所谓事件就是指用户的动作或者触发某项行为。如果定义了触发程序,当数据库执行这些语句,就相当于事件发生了,就会自动激发触发器执行相应
阅读全文
摘要:视图 一个或者多个数据表里的逻辑显示,视图并不存储数据。 视图是一种虚拟的表,并不具备数据。占用很少的内存空间,它是sql中的一个重要概念。 视图建立在已有表的基础上,视图赖以建立的这些表称为基表。 视图的创建和删除只影响视图本身,不影响对应的基表。但是当对视图中的数据进行增加、删除和修改操作时,数
阅读全文
摘要:函数count 在mysql中InnoDB数据引擎中,count(*)和count(1)都是对所有结果进行count,如果有where子句,则对所有符合条件的数据进行统计;如果没有where子句,则是对数据表的数据行数进行统计。 因此count(*)和count(1)本质上并没有区别,执行的负责度都
阅读全文
摘要:加密解密函数 对数据库中的数据进行加密和解密处理啊,以防止数据被窃取,这些函数在保证数据安全时非常有用
阅读全文
摘要:mysql导入.sql文件 1.在命令行,使用source命令导入 mysql> source d:\mysqldb.sql 2.使用数据库连接工具导入。 不同的连接工具导入的方式不同,暂不一一列举
阅读全文
摘要:SQL数据库操作语言(DCL) DCL(Data Control Language:数据库控制语言):用于定义数据库、表、字段、用户的访问权限和安全级别 主要的关键字包括:Grant、REVOKE、COMMIT、ROLLBACK、SAVEPOINT等。
阅读全文
摘要:SQL数据库操作语言(DML) DML(Data Manipulation Language:数据库操作语言):用户添加、删除、更新和查询数据库记录,并检查数据完整性。 主要的语句关键字包括:insert、delete、update、select等
阅读全文
摘要:root用户密码忘记,重置的操作 1: 通过任务管理器或者服务管理,关掉mysqld(服务进程) 2: 通过命令行+特殊参数开启mysqld mysqld -- defaults-file="D:\ProgramFiles\mysql\MySQLServer5.7Data\my.ini" --ski
阅读全文
摘要:mysql安装失败问题 MySQL的安装和配置是一件非常简单的事,但是在操作过程中也可能出现问题,特别是初学者。 问题1:无法打开MySQL8.0软件安装包或者安装过程中失败,如何解决? 在运行MySQL8.0软件安装包之前,用户需要确保系统中已经安装了.Net Framework相关软件,如果缺少
阅读全文
摘要:1.为什么要做分页查询 1.1数据量太大,一次取出没有实际业务意义 1.2 数据量太大,一次取出不够安全 2.oracle的隐藏列 2.1 rowid select t.*,t.rowid from stu t; rowid物理存在,必唯一。 2.2 rownum 分页查询 select t.*,r
阅读全文
摘要:drop,truncate,delete的区别? 1.delte和truncate都是只删除表的数据,而不删除表的结构,drop删除数据和定义。 2.delete语句是dml,事务提交后才会生效。drop和truncate是ddl,操作完成后立即生效不需要提交事务,不能回滚。 3.delete如果有
阅读全文
摘要:插入语句 -- 插入语句 insert into stu (id,name,age,sex) values(seq_test.nextval,'李四',18,'男'); commit; insert into stu values(seq_test.nextval,'王武',21,'男'); com
阅读全文
摘要:序列 序列就是有顺序的数列。例如123456789..... 创建序列 -- 创建序列 create sequence seq_test minvalue 1 maxvalue 9999999999999999999 INCREMENT by 1 start with 1; -- 当前值 --cur
阅读全文
摘要:创建表 create table student( id number(5), name varchar2(50), age number(2), sex varchar2(2) ); 重命名 rename student to stu; 添加备注(表和字段)&查询当前用户下的所有(表和字段)的备注
阅读全文

浙公网安备 33010602011771号