数据库概念和sql语句

数据库概念和sql语句

数据:数:数字信息  据:属性   对一系列对象的具体属性的描述的集合

数据库:数据库就是用来组织(各个数据之间是有关联,是按照规则组织起来的),存储和管理(对数据的增、删、改、查)数据的仓库

数据库是企业的重要信息资产,再使用数据库时,要注意(查和增无所谓,但是删和改,要谨慎)

数据库管理系统(DBMS):实现对数据的有效组织,管理和存取的系统软件

mysql:

数据库是一个系统,是一个人机系统,硬件,os,数据库,DBMS和数据库的用户共同组成

用户是通过DBMS(各种数据库软件)来操作数据

数据库的分类:

mysql:关系型数据库

redis或es:非关系型数据库

关系型数据库:存储数据的结构是一个二维表格

表:行 列

行:记录,用来描述一个对象的信息

列:字段,用来描述对象的一个属性

关系型数据库:mysql(中小型的数据并发请求)oracle(大数据还是用它)sql-server  mariaDB  postgresql

关系型数据库当中,表里面的数据是关联的,表和表之间的数据也是关联起来

面试题:

多表关联,最多可以关联几张表?

三张表

非关系型数据库:保存不是一张表格,key----->value  键值对来保存数据  ky32=12

redis:缓存性数据库

es:索引型数据库

MongDB:文档型数据库

既然有关联,查询速度相对来说,关系型数据库查询速度更慢一些。非关系型数据库可以支持高并发读写,对海量数据依旧保持着高效率的存储和访问

mysql数据库的存储引擎:

5.5之间:MYISAM,不支持事务和外键的存储引擎。适用于读的多,写得少

5.6之后默认的存储引擎:innodb,可以支持事务,外键,行级锁定的存储引擎,可以支持高并发性能的应用

事务:在数据库当中,一个或者多个操作组成的数据操作的序列

这些操作要么全部成功,失败一个就全部不执行。确保数据一致性和完整性

事务的特点:原子性。数据库最小工作单位,要么全部执行成功,要么全部不执行只要有一个操作失败,整个执行的序列都会被回滚(就是一个都不生效),哪怕是完成的操作也会被撤销

            一致性。事务执行前后,数据库的完整性约束不能被破坏。只有在满足所有的约束条件情况下,事务才能被提交

            隔离性。事务的执行是相互隔离,一个事务的执行不能受到其他执行事务的干扰。并发事务之间相互隔离,防止数据不一致的情况发生

            持久性。事务一但提交,他所做的所有修改会被永久的保存在数据库中。即使系统崩溃,提交的数据也不丢失。确保数据库的始终处于一致性的状态,确保数据的完整和一致

mysql的名词:

  1. 数据库:database
  2. 表:table
  3. 行:row
  4. 列:column
  5. 索引:index
  6. 视图:view
  7. 存储过程:procedure
  8. 触发器:trigger
  9. 用户:user
  10. 权限:privilege

mysql的语句规范:

在数据库系统中,sql不区分大小写(但是建议大写)。语句不区分大小写,但是表名严格区分大小写

sql语句可以单行也可以多行书写,但是默认都以;结尾

关键词不能跨行或者简写

子语句通常位于独立行,便于编辑,提高可读性

数据库的命名规则:

必须以字母开头,后面可以包含数据,特殊数字:#  _  $

不要使用mysql的保留字:table select

数据库名 表名  用户名严格区分大小写

数据库的字符类型:

int:4个字节,用来存储整数

char:固定长度的的字符串,用来存储定长的字符串

varchar:可变长度的字符类型,存储可变长度的字符串(无限制的可以随便写,也要根据类型的长度)

float(m,d):单精度浮点  存储浮点数,m表示总位数,d表示小数位

double(m,d):双精度浮点数,存储浮点数,m也是总位数,d表示小数位

text:用于存储大文本数据,文档,或者长字符串

image:二进制存储图像,图片,多媒体

decimal(5,2):用于存储固定精度的小数,其中5表示总位数,2表示小数位

date:存储日期:yyyy-mm-dd

datetime:存储日志yyyy-mm-dd hh:mm:ss

timestamp:和datetime格式一致,可以自动更新为当前的时间戳

重点:

char varchar

‘’char 4个字节 ‘’1个字节

‘ab’‘ab’4个字节 ‘ab’3个字节

‘abcd’‘abcd’4个字节 ‘abcd’5个字节

char无论你是否定义了值,都会占用固定长度的字节大小

varchar:在保存时,varchar 14 实际长度是5,就占用5个,加一个隐藏符,实际上占了6个

varchar比char节省磁盘空间,但是varchar读写速度比较慢

都是字符串类型:一定要用单引号

sql语句的分类

DDL:数据定义语言,用于创建数据的对象,创建库 表 索引

CREATE 创建

DROP 删除

ALTER 修改

null和空格的区别:

null什么都没有,对象没有任何的描述信息

空格:也是字符

DML:数据操作语言,对表中的数据进行管理

select  

update 更新

insert 添加

delete 删除

select * from:一块使用

DQL:查询数据记录

select

DCL:数据控制语言,设置或者更改数据库用户或者用户的权限

GRANT:赋予权限

REVOKE:取消权限

TCL:事务控制语句,管理数据库当中的事务

commit:确认提交事务

ROLLBACK:事务提交之后无法回滚

savepoint:保存点,可以回滚。

默写:

1、select * from ky32 limit 2;

2、select * from ky32 limit 1,3;

3、update ky32 set passwd=passwd(111) where id = 6;

4、select distinct name,sroce from ky32;

5、desc ky32;

6、alter table ky32 modify column name varchar(15);

7、alter table ky32 add birth date;

8、inset into ky32 values(9,test,96,password(1111),now());

9、alter table ky32 change birth birthday char(15);

你可能感兴趣的:(数据库)