0


MySQL数据库基础

目录

数据库概念

数据库是一个软件(是一类软件):这一类软件功能就是"管理数据".实现数据库软件的内部,会广泛的使用到各种数据结构.
数据库管理的数据一般保存在硬盘上.也有少数数据库,是把数据存在内存中的(Redis,Tair…)
MySQL就是一个具体的数据库软件.MySQL这个数据库,是一个"客户端-服务器"结构的程序.
主动发起请求的一方,称为客户端.
被动接受请求的一方,称为服务器.

客户端给服务器发送的数据,称为“请求".
服务器给客户端返回的数据,称为"响应"
通过SQL来操作"数据库”,此处的数据库指的是一个

MySQL

服务器上,所管理的一个独立的数据集合.
一个独立的分组(数据集合)就称为是一个数据库.一个MySQL服务器上可以管理多个数据库.

内存和外存的区别

1.内存的存储空间较小(8G,16G),外存的存储空间较大(512G,1T).
2.内存的访问速度快,外存的访问速度慢.(大概要差3-4个数量级).
3.内存成本高,外存成本低.
4.内存中的数据,断电后消失.外存中的数据,断电后还在.

一、数据库基本操作

1.1 显示当前的数据库

showdatabases;

在这里插入图片描述

1.2 创建数据库

createdatabase 数据库名字;

在这里插入图片描述

数据库的名字,可以随便起,但是不能是

SQL

中的关键字.(如果实在要使用关键字,可以使用``引起来(

esc

下面,

1

前面的那个键)).

  • 如果系统没有db_test2的数据库,则创建一个名叫db_test2的数据库,如果有则不创建:
createdatabaseifnotexists db_test2;

在这里插入图片描述

createdatabaseifnotexists db_test2 characterset utf8mb4;
character set

:指定数据库采用的字符集.

utf8mb4

:这里是数字和汉字的对应关系,表格是存在多个版本的.常用的主要是两个版本:1.GBK , 2.UTF-8
这是当前最主要使用的汉字编码方式.

1.3 使用数据库

use 数据库名;

在这里插入图片描述

1.4 删除数据库

数据库删除以后,内部看不到对应的数据库,里边的表和数据全部被删除.

dropdatabase[ifexists] 数据库名;

在这里插入图片描述

二、常用数据类型

MySQL, Oracle, SQL Server

都是按照表格来组织.称为"关系型数据库"

Redis,HBase, MongoDB

不要求按照表格方式组织(类似于文档/键值对)称为“非关系型数据库".
一个数据库中,可以有很多个数据表.
每个数据表有很多行.每一行称为是一条"记录",每一行又有很多列,每一列称为是一个“字段".
MySQL这样的数据库,就要求每一行这里的列都是一致的.(第一行是三列,第二行也是三列-….每一行都是三列.第一行的第一列是一个整数,第二行的第一列也是一个整数……第一行的第二列是一个字符串,第二行的第二列也是一个字符串…)

为了描述这个数据表中的列的信息,在创建数据表的时候,就需要指定"表头"(表头就是一个表格第一行的那个描述信息).

2.1 数据类型

分为整型和浮点型:
数据类型大小说明对应java类型bit[(m)]m指定位数,默认为1二进制数,M范围从1到64,存储数值范围从0到2^M-1常用Boolean对应BIT,此时默认是1位,即只能存0和1tinyint1字节Bytesmallint2字节Shortint4字节Integerbigint8字节Longfloat(M,D)4字节单精度,M指定长度,D指定小数位数。会发生精度丢失Floatdouble(M,D)8字节Doubledecimal(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数。精确数值BigDecimalnumeric(M,D)M/D最大值+2双精度,M指定长度,D表示小数点位数。精确数值BigDecimal

2.2 字符串类型

数据类型大小说明对应java类型varchar(size)0-65535字节可变长度字符Stringtext0-65535字节长文本数据Stringmediumtext0-16777215字节中等长度文本数据Stringblob0-65535字节二进制形式的长文本数据Byte[]

varchar

可以根据实际需要,来指定要占用多少空间(SIZE的单位是字符)一个字符可能是由多个字节构成的.

BLOB

用于表示二进制的数据

.mp3

文件,

jpg

文件,

.class

…都属于二进制文本件

.txt,java,.c

都属于文本文件.

2.3 日期类型

数据类型大小说明对应java类型datatime8字节范围从1000到9999年,不会进行时区的检索及转换.java.util.Date. java.sql.Timestamptimestamp4字节范围从1970到2038年,自动检索当前时区并进行转换。java.util.Date. java.sql.Timestamp

三、表的操作

需要操作数据库中的表时,需要先使用该数据库:
在这里插入图片描述

3.1 创建表

createtable 表名(列名 类型,列名 类型,...)

示例:
在这里插入图片描述
创建表的时候,可以使用

comment

来给某个列后面加上注释.
在这里插入图片描述

在代码中表示"”一般有两种方式:
1.使用

Decimal/BigDecimal

⒉使用

int

(单位是分即可)这是一个常见的手段~(运算效率要比

Decimal

高很多)

3.2 查看表

showtables;

示例:
在这里插入图片描述

3.3 查看表的结构

desc 表名;

在这里插入图片描述

3.4 删除表

droptable[ifexists] 表名;

示例:
在这里插入图片描述


以上.

标签: sql 数据库

本文转载自: https://blog.csdn.net/dddddrrrzz/article/details/123298622
版权归原作者 来学习的小张 所有, 如有侵权,请联系我们删除。

“MySQL数据库基础”的评论:

还没有评论