MySql复习之基础知识
MySQL 是一个关系型数据库,使用 SQL 语言进行增删改查操作,目前属于 Oracle 旗下的产品。
结构化查询语言,sql语句不区分大小写
相关概念
DB(database):存储数据的仓库,其中的数据是有组织有关联的称之为关系型数据库
DBMS(database management system)数据库管理系统,管理DB的
SQL (structure query language) 结构化查询语言 ,专门与DBMS通信的语言,所有DBMS(MySQL,Oracle,SQLserver等)都支持SQL;
数据库管理系统DBMS分类
存储位置的不同进行分类:
1,基于磁盘的存储(数据存在磁盘中),MySQL,Oracle,SQLServer
2,基于内存的存储(数据存在内存中 频繁访问的 而且是不经常改变的 数据),Redis 非常适合做缓存,
从数据间是否存在关系进行分类:
1,关系型数据库:MySQL,Oracle,SQLServer
2,非关系型数据库:Redis,mongodb(文档) nosql(not only sql)
什么是数据表
数据库中有数据表,数据表由 行和列 组成,表中的每一列称为字段 每一行称之为 记录;每一列类似Java中的属性,每一行类似Java中的对象;
字段的数据类型
1,整型
-
tinyint(2) 等同于byte的取值范围 -128-127
-
tinyint(1) 0 1 等同于java语言 boolean
-
int(n) n: 查询的时候单元格宽度 int(11) 显示宽度和数据类型的取值范围是无关的。如果插入了大于显示宽度的值,只要该值不超过该类型整数的取值范围,数值依然可以插入,而且能够显示出来。
-
bigint(n): 类似于long id 时间:毫秒数
2,小数
-
float(M,D),M称为精度,表示总共 的位数;D表达标度,表示小数的位数 12.345
-
double(m,d):
-
decimal(m,n): 类似于 BigDecimal DECIMAL 的存储空间并不是固定的,而由精度值 M 决定,占用 M+2 个字节 钱
3,字符型 ‘c’ 'ccccccc'
-
char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节
-
VARCHAR 和 TEXT 类型是变长类型,其存储需求取决于列值的实际长度,一个 VARCHAR(10) 列能保存一个最大长度为 10 个字符的字符串
-
MySQL不区分字符和字符串,单引号和双引号类似;
4,日期型
-
date: Date 年月日
-
datetime: 年月日 时分秒
-
timestamp: 年月日 时分秒 时间戳;根据时区显示时间;
SQL语言
-
DDL(Data Definition Language): 数据定义语言 create drop alter
-
DML(Data Manipulation Language): insert delete update
-
DQL(Data Query Language): select
-
DCL(Data Control Language):commit rollback