
数据库
文章平均质量分 53
小码哥222
这个作者很懒,什么都没留下…
展开
-
Oracle归档日志(一)
Oracle写日志的过程是:首先有多个日志组,循环的往日志组里写入日志记录。即:先写组1,组1写满了,再写组2,当组3也写满了之后,就会回过头来 再往组1里写日志。此时就会覆盖原来组1里的日志,因此当这里就需要考虑一下历史日志如何保存的问题sr...原创 2021-07-18 18:25:37 · 1427 阅读 · 1 评论 -
Java池化思想之——数据库连接池
1、池化思想池化思想,一般是对对象的池化。池化思想的具体体现:字符串常量池、数据库连接池、线程池好处:避免了重复创建对象的过程,提高程序的效率。为了资源的反复利用。池: 是一个容器,可以是数组、集合。2、连接池:就是一开始时,就初始化创建多个数据库连接对象 放到池中,用的时候就去池中直接拿来使用,用完之后不需要断开连接,直接还入池中即可。C3P0连接池的原理:java为数据库连接池提供了一个 连接池接口DataSource,定义了一些规范,位于javax.sql包下。所有的连接池如c3p0,原创 2020-12-09 00:15:53 · 570 阅读 · 0 评论 -
一条SQL语句在MySQL中如何执行的
原创 2019-09-15 16:38:18 · 115 阅读 · 0 评论 -
一条SQL语句执行得很慢的原因有哪些?---不看后悔系列
原因:1、没有添加索引2、添加了索引,但是索引失效了:对索引字段进行了运算对索引字段进行了函数运算。数据库自己的判断导致自己选错了索引。...原创 2019-09-15 16:41:40 · 244 阅读 · 0 评论 -
数据库优化,你知道哪些?
来自:https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=2247485117&idx=1&sn=92361755b7c3de488b415ec4c5f46d73&chksm=cea24976f9d5c060babe50c3747616cce63df5d50947903a262704988143c2eeb406...原创 2019-09-15 16:52:48 · 247 阅读 · 0 评论 -
索引(高级)
2.索引2.1索引概述索引:加快查询的一种数据结构。这个数据结构 指向 具体的表结构中的数据。没有索引: 查询记录时采用的是全表扫描。//查找3就得遍历7次才能找到对应数据。有了索引: //只需查找3次,就能找到对应数据。2.2索引的优势和劣势优势:1、提高检索效率,降低数据库的IO成本。2、加快排序速度,降低CPU消耗。劣势:1、索引实际是一张表,位于磁盘中,会占用磁盘空间。...原创 2019-09-28 01:06:08 · 201 阅读 · 0 评论 -
存储引擎(高级)
1.MySQL的体系结构(4层)1)连接层:获取一个数据库的连接。2)Server层:对SQL语句解析(看sql的语法是否正确,sql语义是什么)、Mysql自己再对sql语句进行优化、查询缓存(若缓存中有数据则直接响应)。3)存储引擎层:插拔式的,可以根据自己的需求选择不同的存储引擎。4)文件系统层:管理数据表文件。2.存储引擎2.1存储引擎概述存储引擎: 它是存储数据、更新查询数...原创 2019-09-28 23:43:45 · 208 阅读 · 0 评论 -
SQL优化
5.SQL优化5.1大批量插入数据原创 2019-09-30 22:49:03 · 141 阅读 · 0 评论 -
char(10) varchar(10)
char的长度是不可变的,而varchar的长度是可变的,也就是说,定义一个char[10]和varchar[10],如果存进去的是‘csdn’,那么char所占的长度依然为10,除了字符‘csdn’外,后面跟六个空格,而varchar就立马把长度变为4了。取数据的时候,char类型的要用trim()去掉多余的空格,而varchar是不需要的。尽管如此,char的存取数度还是要比varcha...原创 2019-08-31 13:10:47 · 3136 阅读 · 0 评论 -
关系型数据库 和 非关系型数据库的区别?
非关系型数据库如:redis关系型数据库 和 非关系型数据库的区别?1、存储数据的格式:redis是key-value的形式。而关系数据库是 二维表格的形式。2、存储数据的位置:redis是存储在内存中。而关系数据库是 存储在磁盘中。因此,redisd的读写效率更高,redis也可以把数据持久化到磁盘中。3、事务支持: 关系型数据库支持事务,而redis不支持。4、是否能用sql语句: ...原创 2019-08-29 16:50:33 · 138 阅读 · 0 评论 -
MySQL高级
1、MyISAM 和 InnoDB的区别?2、原创 2019-08-14 01:42:24 · 91 阅读 · 0 评论 -
sql注入
1、什么是sql注入SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而是针对程序员编程时的疏忽,通过SQL语句,实现无帐号登录,甚至篡改数据库。2、SQL注入的原理:sql注入只对sql语句的编译过程有破坏作用。PreparedStatement是预编译,在给SQL语句传入参数之前,先做一个预先编译(此举相当于把sql语句的结构已经固定死了)。然后在执行...原创 2019-08-12 22:37:41 · 199 阅读 · 0 评论 -
数据库——ER图
1、ER图分为实体、属性、关系三个核心部分。实体是长方形体现,而属性则是椭圆形,关系为菱形。1)ER图的实体(entity):即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体实例(entity instance),例如学生实体里包括张三、李四等,实体实例(entity instance) 不需要出现在ER图中。2)ER图的属性(att...原创 2019-08-21 23:48:08 · 5272 阅读 · 0 评论 -
数据库——ER图
1、ER图分为实体、属性、关系三个核心部分。实体是长方形体现,而属性则是椭圆形,关系为菱形。1)ER图的实体(entity):即数据模型中的数据对象,例如人、学生、音乐都可以作为一个数据对象,用长方体来表示,每个实体都有自己的实体实例(entity instance),例如学生实体里包括张三、李四等,实体实例(entity instance) 不需要出现在ER图中。2)ER图的属性(att...原创 2019-08-17 22:08:11 · 17430 阅读 · 2 评论 -
视图和表的区别??
区别?视图是虚拟的表,包含的是sql逻辑,占用少量的物理空间。而表中保存的是数据,占用大的物理空间;当使用视图时,才会根据视图存储的sql逻辑动态生成一个虚拟表;对视图的操作跟普通表是一样的(增删改查);视图的建立create和删除drop只影响视图本身,不影响对应的基本表。应用:隐藏一些不想展示给用户的数据。只展示必要的数据。如:社会保险基金表,可以用视图只显示姓名,地址,而不显示...原创 2019-08-28 08:54:48 · 20821 阅读 · 0 评论 -
多表查询之——union 和 unionAll合并结果集
1、合并结果集就是把两个select 的结果集 合并到一起进行展示。注意事项: 两个select结果集的字段 要保持一致(字段名 + 字段类型)。union 和 unionAll的区别:union会去重。...原创 2019-08-29 08:37:13 · 620 阅读 · 0 评论 -
索引
我们为什么要使用索引?当数据量太大的时候,查询的速度就会很慢很慢,我们就可以使用索引,来进行查询优化,加快查询效率。不使用索引的查询为什么那么慢?不使用索引时,它就默认的先扫描一次整个表的记录,再从中查询出某一行记录。而使用了索引后,它就不会 先扫描整个表的所有数据,而是直接去搜寻某个列中的值。索引,即:类似书的目录。可以快速查询出满足索引字段的条件 的那一行记录。相当于建立了一张...原创 2019-08-29 10:09:32 · 251 阅读 · 0 评论 -
Mysql的存储引擎
存储引擎的了解?Mysql数据库可以使用不同的存储引擎.不同的存储引擎它使用不同的技术来存储文件,如:有的存储在磁盘中,有的存储在内存中。不同的存储引擎 使用不同的存储机制、索引技巧、对事务的支持也不同。MyISAM和 InnoDB的区别?MyISAM:不支持事务也不支持外键,访问速度快对事务的完整性没有要求适合于 select 和 insert 为主的应用可以用MyI...原创 2019-08-29 10:46:05 · 97 阅读 · 0 评论 -
事务问题?
事务概念:mysql中的事务是默认自动提交的,一条增删改语句就是一个事务操作。事务的四大特性:多个事务操作同一份资源时,就会破坏事务的隔离性,引发数据不一致的问题:对于数据不一致的问题,如何解决呢?通过设置事务的4个隔离级别。注意:隔离级别从小到大安全性越来越高,但是效率越来越低。...原创 2019-08-29 11:00:34 · 112 阅读 · 0 评论 -
delete 和 truncate删除表中的数据时,有什么区别呢?
在事务当中,使用delete 删除数据时,因为delete是DML语言,它会把操作记录到事务日志中去,因此可以进行回滚恢复原始数据;而truncate在操作时,不会把操作记录到事务日志中去,因此不能进行回滚。delete删除数据时,是一条记录一条记录的删除。...原创 2019-08-29 12:30:53 · 7414 阅读 · 0 评论 -
存储过程 和 函数
一、存储过程 和 函数的含义 和 好处是一样的(类似于Java中的方法,把实现特定功能的 一组语句封装到方法中)含义:一组预先编译好的sql语句的集合。好处:1、提高sql语句的重用性。一组sql语句一次编译后放到那,后续需要使用时,就不需要再次编译,而直接调用过程Name 拿来用。2、简化了操作。只需要调用过程名 就能执行多条sql语句操作。3、减少了编译次数,并且减少了和服务器的连...原创 2019-08-29 16:34:37 · 139 阅读 · 2 评论 -
数据库面试
1、char(N) 和 varchar(N)的区别?1、都是用来存储字符串的,只是他们的保存方式不一样罢了。2、char:定长,其余位置用空字符填充,处理速度快,效率高,但是费空间,一般用于固定长度的表单提交数据存储 ;例如:身份证号,手机号。varchar:不定长,效率偏低。// varchar(10)如果你存abc,需要空间为4,3个存abc,1个存长度,varchar是可变长度...原创 2019-07-26 21:45:07 · 155 阅读 · 0 评论