快速自学java编程高级语言干货笔记 -MySQL

初识MySQL

1. 了解主流的数据库和数据库分类

1.1 数据库概念

**数据库:**按照数据结构来组织、存储和管理数据的一种建立在计算机存储设备上的仓库。

数据库的优势:

  1. 可以持久化存储大量的数据、方便我们进行检索
  2. 可以保证数据的安全和数据的一致性(事务…)
  3. 可以很轻松的通过数据库来提取出新的有效信息(计算平均分、统计人数)

1.2 数据库的分类

RDB(Relational DataBase)关系型数据库

例如:在关系型数据库中 有一张存储了学生数据的表格    还有一张存储了学生年级的表格

学生姓名 性别 年级

石浩然 男 1

陈旭 男 2

年级编号 年级名称 年级…

1 大学一年级

2 大学二年级

性能方面 关系型数据库受限于技术实现,所以有瓶颈。

但是它在安全方面比较可靠。(事务支持好)

NoSQL(Not only SQL)不仅仅是SQL 非关系型数据库

文档型数据库

键值对数据库  key  value

	姓名    石浩然

图形数据库

.....

它这种概念正式兴起于web2.0时代 2006-2009… 它的性能非常优异 。

但是它的安全方面要比较差。(事务支持不太好)

RDB(主) + NoSQL(副)

1.3 主流数据库

RDB:

MySQL   Oracle   SQLServer PostgreSQL MariaDB SQLlite.....

NoSQL:

Redis   Memcached   MongoDB  HBase   Solr   ElasticSearch....

2. 了解常用的数据库命令

2.1 数据库服务器的组成

数据库是基本单位

数据表是数据库的基本单位

例如:我们需要开发一个小说阅读器,它需要存储小说、分类、用户…信息。

创建一个小说阅读器的数据库:sun_reader_db

在sun_reader_db中创建小说表、分类表、用户表(二维表)

2.2 SQL介绍

**SQL:(**Structured Query Language)结构化查询语言 它也是一种规范、标准。

我们的关系型数据库都是采用SQL来进行操作的,不同的数据库对SQL进行了一些改造,但是类似。CRUD

DDL:数据定义语言 创建Create 删除Drop 修改Alter table…

DML:数据操作语言 CUD 增Insert 删Delete 改Update

DQL:数据查询语言 Select 查询

DCL:数据控制语言 Grant 、Roll back 、 commit…

2.3 数据库相关操作命令

-- 创建数据库命令
create database 数据库名; 
-- 删除数据库命令
drop database 数据库名;
-- 查看数据库
show databases;
-- 切换数据库   如果需要在此数据库中进行操作 必须要先切换此数据库
use 数据库名;

3. 熟悉数据表操作的语句/命令

3.1 创建数据库表

create table 表名(
	列名1 数据类型(数据长度)  列约束/属性,
	列名2 数据类型  列约束....
);
-- 创建用户信息表  有些时候在MySQL中 如果有敏感字/关键字 可以添加反引号`来解决。注意不是单引号'
create table `user`(
	id int,
    username varchar(25)
);

3.2 查看数据库中的数据表

-- 查看数据库的所有表
show tables;
-- 查看表定义/结构
desc/describe 表名;

3.3 删除数据库

-- 删除数据库表
drop table 表名;

4. 熟悉常见的数据列属性和类型

4.1 列属性

not null  不允许字段为空
unique 字段必须唯一
unsigned 无符号 无负号  不能与unique关键字同时存在
zerofill 以0补全某个字段类型的剩余长度  不能与unsigned同时使用
default 默认值
comment 注释
primary key 主键:用来唯一标识一条数据的列就是主键   它的默认效果为 非空not null且唯一unique  它还能提升查询速度
auto_increment 自动增长  用于主键列的值自增

4.2 列类型

数值:可写可不写
	tinyint(短整型)	[int](整数型)   bigint(长整型)
	[double](双精度浮点数)
字符串:字符串必须写长度
	[varchar] 可变字符串 最大长度255    char不可变字符串
	假设设置了varchar长度为10  char长度也为10  当真实存了1个字符  varchar占用1char占用10(效率高)
	text 长文本
日期类型:日期类型不能写长度
	[datetime]    timestamp
	年月日 时分秒    年月日

猜你喜欢

转载自blog.csdn.net/weixin_44793608/article/details/90720775