【MySQL数据库】MySQL数据库的介绍和基本使用

1.数据库介绍

1.1 数据库是什么

文件存储的缺点:

  • 文件的安全性问题;
  • 文件不利于数据查询和管理;
  • 文件不利于存储海量文件;
  • 文件在程序中控制不方便;

数据库存储介质:磁盘、内存;

为了解决上述问题,专家设计出更加利于管理数据的软件--数据库,它能更有效地管理数据。数据库可以提供远程服务,即通过远程连接来使用数据库,因此也称为数据库服务器。

1.2 数据库分类

数据库大体可以分为关系型数据库和非关系型数据库。

关系型数据库(RDBMS):

是指采用了关系模型来组织数据的数据库。简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。

基于标准的SQL,只是内部一些实现有区别。常用的刮吸星数据库有:

1)Oracle:甲骨文产品,适合大型项目,适用于做复杂的业务逻辑。收费

2)MySQL:属于甲骨文,不适合做复杂的业务。开源免费。

3)SQL Server:微软的产品,安装部署在windows server上,适用于中大型项目。收费。

菲关系型数据库:

不规定基于SQL实现。现在更多是指NoSQL数据库;

2.客户端连接MySQL服务器

安装好服务器之后,

连接服务器:

  • MySQL默认只允许在服务器本机 使用 root 用户登录,要开启 root 用户的远程登录,在MySQL服务器 本机执行:myspl -u root -p
  • 然后输入密码,没有设置密码则直接回车
  • 退出为:quit;

3.SQL分类

1.DDL数据定义语言,用来维护存储数据的结构

  代表指令:create,drop,alter

2.DML数据操纵语言,用来对数据进行操作

  代表指令:insert,delete,update

DML中又单独分了一个DQL,数据查询语言,代表指令:select

3.DCL数据控制语言,主要负责权限管理和事务

代表指令:grant,revoke,commit

4.数据库基本操作

4.1 显示当前数据库

show databases;

4.2 创建数据库

语法:

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [,
create_specification] ...]
create_specification:
[DEFAULT] CHARACTER SET charset_name
[DEFAULT] COLLATE collation_name

说明:

大写的表示关键字

[] 是可选项

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

COLLATE:指定的数据库字符集的校验规则

create database test;//创建名为test的数据库
create database if not exists test;//如果系统中没有test数据库,则创建一个test数据库
//如果系统没有 db_test 的数据库,则创建一个使用utf8mb4字符集的 db_test 数据库,如果有则 不创建
create database if not exists db_test character set utf8mb4;

说明:

当我们创建数据库时没有指定的字符集和校验规则时,系统默认的字符集为:utf-8,校验规则为:utf8_general_ci;

MySQL的utf8 编码不是真正的utf8,没有包含某些复杂的中文字符。MySQL真正的utf8是使用utf8mb4,尽量使用utf8mb4;

4.3 使用数据库

use 数据库;
use test;

4.4 删除数据库

drop database [if exists] test;

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

5.常用数据类型

5.1 数值类型(分为整型和浮点型)

数据类型

大小

说明

对应java类型

bit[(m)]

m指定位数,默认为1,

二进制数,M范围从1到64,存储数值范围从0到2^M-1

Boolean

此时 默认是1位,即只能存0和1

tinyint

1字节  

 

Byte

smallint

2字节

 

Short

int

4字节  

 

Integer

bigint

8字节  

 

Long

float(m,d)

4字节

单精度,M指定长度, 

D指定 小数位数。会发生精度丢失

Float

double(m,d)

8字节  

 

Double

decimal(m,d))

M/D最大 值+2

双精度,M指定长度,

D表示 小数点位数。精确数值

BigDecimal

numeric(m,d))

M/D最大 值+2

和decimal一样

BigDecimal

5.2 字符串类型

数据类型

大小

说明

对应java类型

varchar (size)

0-65,535字节

可变长度字符串

String

text

0-65,535字节

长文本数据

String

mediumtext

0-16 777 215字节

中等长度文本数据

String

blob

0-65,535字节

二进制形式的长文本数据

byte[]

varchar (size) :普通字符串使用

text:大文本

5.3日期类型

数据类型

大 小

说明

对应java类型

datetime

8字节

范围从1000到9999年, 不会进行时区的 检索及转换。

java.util.Date、

java.sql.Timestamp

timestamp

4字节

范围从1970到2038年, 

自动检索当前时 区并进行转换。

java.util.Date、

java.sql.Timestamp

6.表的一些基本操作

6.1需要操作数据库中的表时,需要先使用该数据库

use 数据库名;
use  test;

6.2 查看表,显示表结构

desc 表名 

6.3创建表(相当于java的类)

CREATE TABLE table_name (
    field1 datatype,
    field2 datatype,
    field3 datatype 
    );

6.4 删除表

-- 删除 stu_test 表 
drop table stu_test; 
-- 如果存在 stu_test 表,则删除 stu_test 表 
drop table if exists stu_test;

6.5 展示数据库中有哪些表

show tables;


发布了62 篇原创文章 · 获赞 9 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_43669007/article/details/104065736