Mysql数据库基础和增删改查操作(每一次「欢喜」都值得纪念)

一、数据库基本概念

数据

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

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

数据库

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

数据库管理系统(DBMS)

  • 是实现对数据库资源有效组织、管理和存取的系统软件。
  • 数据库的建立和维护功能、数据定义功能、数据操纵功能、数据库的运行管理功能、通信功能。

数据库系统

  • 是一个人机系统,由硬件、OS、数据库、DBMS、应用软件和数据库用户组成
  • 用户可以通过DBMS或应用程序操作数据库。
    在这里插入图片描述

二、数据库类型和常用数据库

1.关系型数据库

关系数据库系统是基于关系模型的数据库系统
关系模型的数据结构使用简单易懂的二维数据表

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

关系模型可用简单的“实体-关系”(E-R)图来表示
E-R图中包含了实体(数据对象)、关系和属性三个要素

MySQL(甲骨文收购)
MariaDB
Oracle(甲骨文)
SQL-Server(微软)
DB2(IBM)
PostgreSQL

2.非关系型数据库

非关系数据库也被称作NoSQL (Not Only SQL)
存储数据不以关系模型为依据,不需要固定的表格式
非关系型数据库的优点

  • 数据库可高并发读写
  • 对海量数据高效率存储与访问
  • 数据库具有高扩展性与高可用性

缓存型数据库 Redis、Memcache

时序型数据库 Prometheus

文档型数据库 MongoDB

三、数据库的数据类型

整型
在这里插入图片描述
浮点型

字符串

常用数据类型

  • int :整型
  • float :单精度浮点 4字节32位
  • double :双精度浮点 8字节64位
  • char :固定长度的字符类型
  • varchar :可变长度的字符类型
  • text :文本
  • image :图片
  • decimal(5,2) :5个有效长度数字,小数点后面有2位

四、SQL语句

1.简介

SQL语句用于维护管理数据库,包括数据查询、数据更新、访问控制、对象管理等功能。

2.分类

  • DDL:数据定义语言,用于创建数据库对象,如库、表、索引等。

  • DML:数据操纵语言,用于对表中的数据进行管理。

  • DQL:数据查询语言,用于从数据表中查找符合条件的数据记录。

  • DCL:数据控制语言,用于设置或者更改数据库用户或角色权限。
    /weixin_58544496/article/details/127380944

五、SQL语句的使用

1.数据库操作

(1)创建数据库

CREATE DATABASE 数据库名;

在这里插入图片描述

(2)查看数据库

SHOW DATABASES;

在这里插入图片描述

(3)使用(进入)数据库

USE 数据库名;

在这里插入图片描述

(4)删除数据库

DROP DATABASE 数据库名

在这里插入图片描述

2.数据库表操作

(1)查看数据库中的表

SHOW TABLES; 进入数据库中,查看所有的表

在这里插入图片描述

(2)创建数据库表

CREATE TABLE 表名 (字段1 数据类型,字段2 数据类型,…);

在创建时,数据类型后面加上约束条件(用空格隔开)实现约束效果

在这里插入图片描述

在这里插入图片描述

(3)查看数据库表的结构

DESC 表名;

在这里插入图片描述

(4)删除数据库表

DROP TABLE 表名;

在这里插入图片描述

(5)修改数据库表结构

ALTER TABLE 旧表名 RENAME 新表名; 修改表名

在这里插入图片描述

ALTER TBALE 表名 ADD 字段名 数据类型; 添加字段

在这里插入图片描述

ALTER TABLE 表名 CHANGE 旧字段名 新字段名 数据类型; 修改字段名

在这里插入图片描述

ALTER TBALE 表名 DROP 字段名; 删除字段

在这里插入图片描述

3.表中的数据操作

(1)添加记录

INSERT INTO 表名 (字段1,字段2,…) VALUES (数字,‘字符串’);
如果没有非空限制,未指定字段的部分默认为NULL。
全字段填入数据可以不指定字段,即INSERT INTO 表名 VALUES (数字,‘字符串’);

在这里插入图片描述
在这里插入图片描述

(2)查询表中记录

SELECT * FROM 表名; 查看表中所有记录

在这里插入图片描述

SELECT * FROM 表名 limit 数字; 查看表中指定条目数记录

在这里插入图片描述

SELECT * FROM 表名 limit 数字1,数字2; 查看表中指定数字1条之后的数字2条记录

在这里插入图片描述

SELECT 字段x,字段y,… FROM 表名; 查询指定字段记录

在这里插入图片描述

SELECT 字段x,字段y,… FROM 表名\G 将查询到的记录纵向显示(适用于字段较多)

在这里插入图片描述

SELECT * FROM 表名 WHERE 条件1 [AND 条件2] [OR 条件3]; 根据条件查询记录

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

(3)删除记录

DELETE FROM 表名; 删除表中所有记录

在这里插入图片描述
在这里插入图片描述

DELETE FROM 表名 WHERE 条件1 [AND 条件2] [OR 条件3]; 删除表中指定条件记录

在这里插入图片描述

(4)修改记录

UPDATE 表名 SET 字段=值 WHERE 条件1 [AND 条件2] [OR 条件3]; 修改指定条件记录

在这里插入图片描述

六、数据库表进阶操作

1.if 判断创建表

创建表前判断表是否存在,不存在则创建,存在则不创建。

CREATE TABLE IF NOT EXISTS 表名 (字段1 数据类型,字段2 数据类型,…);

在这里插入图片描述
在这里插入图片描述

2.克隆表

CREATE TABLE 新表 LIKE 旧表; 通过like方法复制旧表的表结构
INSERT INTO 新表 SELECT * FROM 旧表; 向新表插入旧表查询的数据

在这里插入图片描述

3.查看表结构和详细信息

SHOW CREATE TABLE 表名; 以SQL命令格式展示表结构,还能显示表的其它信息

在这里插入图片描述

4.重建表(格式化)

TRUNCATE TABLE 表名;
与清空表数据的区别
delete from 表名; 是一行一行的删除数据记录,删除效率较慢,执行完后会返回删除的记录条目数,且删完后再插入数据记录,自增字段仍然会以原来的最大记录自增。
而truncate table 表名; 是直接重建表,清空速度比delete更快,执行完后不会返回记录条目数,且清空表后再插入数据,自增字段会重新从1开始递增。

在这里插入图片描述

5.创建临时表

CREATE TEMPORARY 表名 (字段1 数据类型,字段2 数据类型,…);
临时表只能在当前连接中有效,能正常被增删改查,但是show tables是看不到的,并且换一个或者退出当前连接后临时表都会失效.

在这里插入图片描述

6.外键连接

外键的定义
如果同一个属性字段x在表一中是主键,而在表二中不是主键,则字段x称为表二的外键。
主键表和外键表的理解
(1)以公共关键字作主键的表为主键表(父表、主表)
(2)以公共关键字作外键的表为外键表(从表、外表)
注意:与外键关联的主表的字段必须设置为主键。要求从表不能是临时表;主从表的字段具备相同的数据类型、字符长度和约束。

举例:创建两张表,主键表为供货商的编号和名字,外键表为货物表,将供货商编号作为外键。

先创建主键表(供货商表)

在这里插入图片描述
为主表添加一个主键约束(主键名建议以"PK_"开头)

在这里插入图片描述
再创建外键表(货物表) 在这里插入图片描述

插入数据时,先主再外
删除数据时,先外再主

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值