数据库
数据库相关
SileeLiu
仰望星空,脚踏实地
小萌新的进阶之路!
展开
-
死锁
一、什么是死锁多线程以及多进程改善了系统资源的利用率并提高了系统 的处理能力。然而,并发执行也带来了新的问题——死锁。死锁是指两个或两个以上的进程(线程)在运行过程中因争夺资源而造成的一种僵局(Deadly-Embrace) ) ,若无外力作用,这些进程(线程)都将无法向前推进。下面我们通过一些实例来说明死锁现象。先看生活中的一个实例,2个人一起吃饭但是只有一双筷子,2人轮流吃(同时拥有2...原创 2019-05-25 11:32:59 · 296 阅读 · 0 评论 -
MySQL数据库(一)
数据库数据库简介之前通过io流操作文件的方式对数据进行增删改差的弊端代码量大 导致开发效率低 有现成的肯定用现成的数据库软件执行效率低一般只能保存字符串数据什么是DB DataBase数据库,指保存数据的文件集合什么是DBMS DataBaseManagementSystem 管理数据库文件的软件系统 ,常见的DBMS有:Oracle、MySQL、SQLServer、DB2等...原创 2019-04-19 16:14:13 · 230 阅读 · 0 评论 -
MySQL数据库(二)
主键约束约束:创建表时给表字段添加的限制条件主键:表示数据唯一性的字段称为主键主键约束:保证字段的值唯一且非空如何使用: create table t1(id int primary key,name varchar(10)); insert into t1 values(1,‘aaa’); //成功 insert into t1 values(1,‘bbb’); //报错 因为不能重复...原创 2019-04-22 08:49:04 · 146 阅读 · 0 评论 -
MySQL数据库(三)
is null 和 is not null查询没有奖金comm的员工信息select * from emp where comm is null;查询没有领导的员工姓名enameselect ename from emp where mgr is null;查询有领导的员工姓名ename和领导编号mgrselect ename,mgr from emp where mgr is no...原创 2019-04-22 08:49:17 · 593 阅读 · 0 评论 -
MySQL数据库(四)
数学相关函数向下取整 floor(num)select floor(3.8);四舍五入 round(num)select round(23.8);四舍五入 round(num,m) m代表小数位数select round(23.879,2);非四舍五入 truncate(num,m) m代表小数位数select truncate(23.879,2);随机数 rand() 0-...原创 2019-04-22 08:49:34 · 315 阅读 · 0 评论 -
MySQL数据库(五)
表设计之关联关系一对一什么是一对一: 有AB两张表,A表中一条数据对应B表一条数据,同时B表一条也对应A表中的一条数据,这种关系称为一对一应用场景:用户表和用户信息扩展表,商品表和商品详情表如何建立关系:在从表中添加外键指向主表的主键一对多什么是一对多:有AB两张表,A表中一条数据对应B表中的多条数据,同时B表中一条数据对应A表的一条数据,称为一对多。场景: 员工表和部门表 ...原创 2019-04-22 08:49:45 · 215 阅读 · 0 评论 -
Redis基础
Redis概念: redis是一款高性能的NOSQL系列的非关系型数据库什么是NOSQLNoSQL(NoSQL = Not Only SQL),意即“不仅仅是SQL”,是一项全新的数据库理念,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的...原创 2019-05-24 16:46:19 · 135 阅读 · 0 评论 -
MySQL常用数据库引擎
MySQL常用数据库引擎查看MySQL数据库使用的引擎 SHOW ENGINES;查看数据库默认使用哪个引擎SHOW VARIABLES LIKE 'storage_engine';MyISAM存储引擎MyISAM基于ISAM存储引擎,并对其进行扩展。它是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。MyISAM拥有较高的插入、查询速度,但不支持事物。...原创 2019-05-24 18:02:49 · 8278 阅读 · 0 评论 -
数据库三大范式
三大范式第一范式第一范式(1NF)要求数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值。若某一列有多个值,可以将该列单独拆分成一个实体,新实体和原实体间是一对多的关系。何一个关系数据库中,第一范式(1NF)是对关系模式的基本要求,不满足第一范式(1NF)的数据库就不是关系数据库。第二范式满足第二范式(2NF)必须先满足第一范式(1NF)。第二范式要求实体中没一行的...原创 2019-05-24 18:12:18 · 190 阅读 · 0 评论 -
数据库事务
数据库事务概念事务指逻辑上的一组操作,组成这组操作的各个单元,要不全部成功,要不全部不成功。事务的四大特性(简称ACID)原子性(Atomicity):原子性是指事务包含的所有操作要么全部成功,要么全部失败回滚,因此事务的操作如果成功就必须要完全应用到数据库,如果操作失败则不能对数据库有任何影响。一致性(Consistency):一致性是指事务必须使数据库从一个一致性状态变换到另一个...原创 2019-05-24 19:58:31 · 148 阅读 · 0 评论 -
MySQL数据库的锁机制
使用数据库锁机制得目的在数据库中,除了传统的计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供需要用户共享的资源。 如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一个问题,锁冲突也是影响数据库并发访问性能的一个重要因素。锁分类按操作划分:DML锁,DDL锁按锁的粒度划分:表级锁、行级锁、页级锁按锁级别划分:共享锁、排他锁按加锁方式划分:自动锁、显示锁按使...原创 2019-05-25 10:10:31 · 183 阅读 · 0 评论 -
数据库中的触发器
触发器概念:触发器是一个在修改指定表中的数据时执行的存储过程。经常通过创建触发器来强制实现不同表中的逻辑相关数据的引用完整性或一致性。由于用户不能绕过触发器,所以可以用它来强制实施复杂的业务规则,以此确保数据的完整性。触发器定义在某个创建的表上也可以定义在一个数据库上。触发器和存储过程的区别:(1)触发器主要时通过事件进行触发而被执行的(2) 存储过程可以通过存储过程名字而被直接调用...原创 2019-05-25 10:42:54 · 652 阅读 · 0 评论 -
数据库存储过程与函数
存储过程简介SQL语句需要先编译然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。存储过程是可编程的函数,在数据库中创建并保存,可以由SQL语句和控制结构组成。当想要在不同的应用程序或平台上执行相同的函数,或者封装特定功能时,存储过程是非常有用的。数据...原创 2019-05-25 10:58:03 · 780 阅读 · 0 评论 -
数据库优化
MySQL数据库优化的八种方式1、选取最适用的字段属性MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)...原创 2019-05-25 11:24:31 · 196 阅读 · 0 评论 -
数据库常用表操作SQL语句案例
1. 简单SQL查询语句案例:查询没有上级领导的员工的编号,姓名,工资select empno,ename,sal from emp where mgr is null;案例:查询emp表中没有奖金的员工的姓名,职位,工资,以及奖金select ename,job,sal,comm from emp where comm=0 or comm is null;案例:查询emp表中含有奖金...原创 2019-04-18 20:29:09 · 2158 阅读 · 0 评论