数据库基础(一)

数据库基础概念

为了方便存储数据,实现了数据的持久化,可以统一管理,方便查询

DB(database)

DB:(数据库)存储数据的"仓库",保存一系列有组织的数据

DBMS(database Management System)

DBMS:(数据库管理系统)也称数据库软件,管理DB中的数据,数据库是通过DBMS创建和操作的容器,

常见数据库管理系统:MySQL,Oracle,DB2,SqlServer等

SQL(Structure Query Language)

SQL:(数据化查询语言)专门用来与DBMS通信的语言

1.不是某个数据库供应商特有的语言,几乎所有的DBMS都支持SQL

2.是一种强有力的语言,可以进行非常复杂和高级的数据库操作

数据库特点

1.将数据放到表中,然后将表放到库中

2.一个数据库可以有多个表,每个表都有自己的名字,用来标识自己.表具有唯一性

3.表具有一些特性,,这些特性定义了在数据库如何存储,类似java中的"类"

4.表由列组成,我们称为字段.所有表都有一个或者多个列组成,每一列类似java中的"属性"

5.表中数据按行存储,类似java中的"对象"

数据库分类

关系型数据库

数据库中表与表之间的固定关系

MySQL:早起是瑞典一家公司开发,免费的,现在已被Oracle收购

Oracle:Oracle公司开发

DB2:IBM 收费的,大型数据库

SqlServer:微软,收费的

非关系型数据库

没有固定关系,数据以key--value的形式存储

Redis:做缓存,计数器,简单的消息队列,session服务器

为什么要使用数据库

1.数据保存在内存中

优点: 存取速度快

缺点: 数据不能永久保存

2.数据保存在文件中

优点: 数据可以永久保存

缺点: 数据比内存中操作慢,频繁的IO操作;查询数据不方便

3.数据保存在数据库中

1)可以做到数据永久保存

2)使用SQL语句,查询效率高

3)管理数据方便

MySQL

MySQL是一款关系型数据库管理系统,由瑞典MySQLAB公司开发,属于Oracle旗下产品.MySQL是最流行的关系型数据库管理系统之一,在Web应用方面,MySQL是最好的RDBMS应用软件之一.在java企业级开发中非常常用,因为MySQL是开源免费的,并且方便扩展.

数据库三大范式

1.保证列的原子性,每列是不可再拆分的;

2.在第一范式的基础上,非主键列完全依赖于主键,而不是依赖主键的一部分;

3.在第二范式的基础上,非主键列只依赖于主键,不依赖其它非主键

MySQL有关权限表

MySQL服务器通过权限表来控制用户对数据库的访问,权限表存放在MySQL数据库里,由mysql_install_db脚本初始化.权限表分别有:user,db,table_priv,columns_priv和host.

user权限表:记录允许连接到服务器的用户账号信息,里边的权限是全局级的

db权限表:记录各个帐号在各个数据库上的操作权限

table_priv权限表:记录数据表级的操作权限

columns_priv权限表:记录数据列级的操作权限

host权限表:配合db权限表对给定主机上数据库级操作权限作更细致的控制;这个权限表不受GRANT和REVOKE语句的影响

数据类型

整数型:

tinyint(很小的整数(8位二进制) )

smallint (小的整数(16位二进制))

mediumint(中等大小的整数(24位二进制))

int(integer)(普通大小的整数(32位二进制))

小数类型:

float(单精度浮点数)

double(双精度浮点数)

decimal(m,d)(压缩严格的定点数)

日期格式:

year(年YYYY)

time(时:分:秒HH:MM:SS)

date(年-月-日YYYY-MM-DD)

datetime(年-月-日 时:分:秒YYYY-MM-DDHH:MM:SS)

timestamp(YYYYMM-DDHH:MM:SS)

文本格式:

char(0-65535之间的整数)

varchar(0-65535之间的整数多个字符)

text(0-65535之间的整数 文本)

longtext(0~4294967295字节)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值