MySQL操作基础

文章目录

  • 一、Mysql的基本概念
    • 1.1数据库有哪些组成
      • 数据
      • 数据库
    • 1.2数据库系统和数据库管理系统
    • 1.3数据库的发展史
  • 二、数据库的分类
  • 三、数据库的数据类型
  • 三、数据库的操作
    • 3.1查看数据库的结构
    • 3.2创建及删除数据库和表
    • 3.3管理表中的数据记录
    • 3.4修改表名和表结构

Linux操作系统:centos Ubuntu suse
国产系统:华为:欧拉、阿里:龙蜥 腾讯:tencentOS 麒麟(银河麒麟、中标麒麟-> centos 优麒麟-> Ubuntu ) 统信 红旗

一、Mysql的基本概念

1.1数据库有哪些组成

数据

  • 描述事物的符号标记
  • 包括数字、文字、图形、图像、声音、档案记录等
  • 以“记录”形式按统一的格式存储

  • 将不同的记录组织在一起
  • 用来存储具体的数据

数据库

  • 表的集合,是存储数据的仓库
  • 以一定的组织方式存储的相互有关的数据集合
  • 是按照数据结构来组织、存储和管理数据的仓库

数据库中有表,表中有记录。

1.2数据库系统和数据库管理系统

数据库管理系统:

  • 是实现对数据库资源有效组织,管理和存取的系统软件

数据库的建立和维护功能、数据定义功能、数据操纵功能、数据库的运行管理功能、通信功能

数据库系统:

  • 是一个人机系统,由硬件、oS、数据库、DBMS、应用软件和数据库用户组成

  • 用户可以通过DBMS或应用程序操作数据库

MySQL操作基础_第1张图片

1.3数据库的发展史

第一代数据库

  • 自20世纪60年代起,第一代数据库系统问世
  • 是层次模型与网状模型的数据库系统
  • 为统一管理和共享数据提供了有力的支撑。

第二代数据库

  • 20世纪70年代初,第二代数据库——关系数据库开始出现
  • 20世纪80年代初,IBM公司的关系数据库系统DB2问世,开始逐步取代层次与网状模型的数据库,成为行业主流
  • 到目前为止,关系数据库系统仍占领数据库应用的主要地位

第三代数据库

  • 自20世纪80年代开始,适应不同领域的新型数据库系统不断涌现

  • 面向对象的数据库系统,实用性强、适应面广

  • 20世纪90年代后期,形成了多种数据库系统共同支撑应用的局面·

  • —些新的元素被添加进主流数据库系统中

    • 例如,Oracle支持的“关系-对象”数据库模型

二、数据库的分类

数据库可以分两大类: 关系型数据库和非关系型数据库

关系型数据库

  • 关系数据库系统是基于关系模型的数据库系统
  • 关系模型的数据结构使用简单易懂的二维数据表
  • 关系模型可用简单的“实体-关系”(E-R)图来表示
  • E-R图中包含了实体(数据对象)、关系和属性三个要素

关系型数据库SQL 的存储结构为二维表,由库、表、数据组成其中数据是由行(字段)和列(记录)组成

  • 每一行称为一条记录,用来描述一个对象的信息

  • 每一列称为一个字段,用来描述对象的一个属性

  • 关系型数据库典型代表: Mysql(5.7/8.0) Mariadb PostgreSQL Oracle SQL Server DB2
    国产数据库代表: 阿里云RDB 华为 高斯 腾讯 TDBA 阿里 Oceanbase 人大金仓 达梦

非关系型数据库介绍

  • 非关系数据库也被称作NoSQL (Not Only sQL)

  • 存储数据不以关系模型为依据,不需要固定的表格式

  • 非关系型数据库的优点

    • 数据库可高并发读写

    • 对海量数据高效率存储与访问

    • 数据库具有高扩展性与高可用性

  • 非关系型数据库:

缓存型:Redis Mecached

文档型:MongoDB

搜索型:ElasticSearch(ES)

时序型:Prometheus InfluxDB

三、数据库的数据类型

常用的数据类型:

数据 作用
int: 整型 无符号【0,2^32-1】,有符号【-2^31,2^32-1】
float: 单精度浮点 4字节32位
double: 双精度浮点 8字节64位
char: 固定长度的字符类型
varchar: 可变长度字符类型
text: 文本
image: 图片
decimal(5,2) 五个有效长度数字,小数点后面有2位

char与varchar的区别 :

CHAR(4) 存储需求 VARCHAR(4) 存储需求
‘’ ’ ’ 4个字节 ‘’ 1个字节
‘ab’ 'ab ’ 4个字节 ‘ab’ 3个字节
‘abcd’ ‘abcd’ 4个字节 ‘abcd’ 5个字节
‘abcdefgh’ ‘abcd’ 4个字节 ‘abcd’ 5个字节

CHAR和VARCHAR类型类似,但它们保存和检索的方式不同。它们的最大长度和是否尾部空格被保留等方面也不同。在存储或检索过程中不进行大小写转换。

字节大小:

  • char无论是否有值,都会占用固定长度的字节大小,保存在磁盘上都是4字节。
  • varchar在保存字符时,默认会加一个隐藏的结束符,因此结束符会多算一个字节。

优劣比较:

  • varchar比char节省磁盘空间。
  • 但varchar类型的数据读写速度比char慢,因为char是连续的磁盘空间,e而varchar在多次增删改查中会产生一些磁盘空间碎片

浮点数的含义:
float(m,d)

设个字段定义为float(6,3),如果插入一个数123.4578实际存入库里的是123.457,整数部分最大是3位,如果插入数12.123456,存储的是12.1234,如果插入12.12,存储的是12.1200

三、数据库的操作

3.1查看数据库的结构

1、查案看当前数据库

show databases;

MySQL操作基础_第2张图片

2、查看数据库当中包含的表
方法一:
use 数据库名;
show tables;

MySQL操作基础_第3张图片

方法二:
show tables from 数据库名

MySQL操作基础_第4张图片

3、查看表的结构

use 数据库名;
desc 表名;

MySQL操作基础_第5张图片

SQL语句

SQL语句用于维护管理数据库,包括数据查询、数据更新、

SQL语言分类:

  • DDL: 数据定义语言,用于创建数据库对象,如库、表、索引等
  • DML:数据操纵语言,用于对表中数据进行管理
  • DQL:数据查询语言,用于从数据表中查找符合条件的数据记录
  • DCL:数据控制语言,用于设置或者更改数据库用户或角色权限

3.2创建及删除数据库和表

1、创建新的数据库

create database 新的数据库名;

MySQL操作基础_第6张图片

2、创建新的表

use 数据库名;
create table 新的表名 (字段一 数据类型,字段二 数据类型,primary key (主键名));

  • 主键一般选择能代表唯一性的字段不允许取空值(NULL),一个表只能有一个主键。

MySQL操作基础_第7张图片

3、删除指定的数据表

drop 数据库名.数据表名;
MySQL操作基础_第8张图片

4、删除数据库名

drop database 数据库名;

MySQL操作基础_第9张图片

3.3管理表中的数据记录

use class;
insert into 数据库名 (字段一,字段二,字段三)values (记录1,记录2,记录3);

MySQL操作基础_第10张图片

2、查询数据记录

select * from 表名;

MySQL操作基础_第11张图片

select * from 数据表名 limit 2; # 查看表的前两行

MySQL操作基础_第12张图片

select * from 数据表名 limit 2,3; #查看表前两行的后三行

MySQL操作基础_第13张图片

select * from 数据表名 where 表达式;#查询表中所有符合条件的

3、修改数据表中的数据记录

update 数据表名 set 字段1=字段值1,字段2=字段值2 where 条件表达式;

MySQL操作基础_第14张图片

4、删除数据

delete from 数据表名 where 表达式;

MySQL操作基础_第15张图片

3.4修改表名和表结构

1、修改表名

alter table 旧表名 rename 新表名;

MySQL操作基础_第16张图片

2、拓展表结构

alter table 数据表名 add 新的字段 数据类型 default ‘默认值’

MySQL操作基础_第17张图片

3、修改字段名,并添加唯一值

alter table 数据表名 change 旧字段名 新字段名(数据类型) unique key;

MySQL操作基础_第18张图片

4、删除字段

alter table 数据表名 drop 字段名;

MySQL操作基础_第19张图片

你可能感兴趣的:(MySQL,mysql,数据库)