【⑩MySQL】:表管理,让数据管理不再困难

news2024/10/7 4:28:31

前言

✨欢迎来到小K的MySQL专栏,本节将为大家带来MySQL表/数据库创建和管理的讲解

目录

  • 前言
  • 1. 基础知识
  • 2. 创建和管理数据库
  • 3.创建表
  • 4. 修改表
  • 5. 删除表
  • 6.总结


1. 基础知识

1.1 表的基本概念

在MySQL数据库中,表是一种很重要的数据库对象,是组成数据库的基本元素,由若干个字段组成,主要用来实现存储数据记录。表的操作包含创建表、查看表、删除表和修改表,这些操作是数据库对象的表管理中最基本、最重要的操作。

本小节只要讲解如下内容:

  • 表的相关概念;
  • 表的基本操作:创建、查看、更新和删除;
  • 表的使用策略。

表是包含数据库中所有数据的数据库对象。数据在表中的组织方式与在电子表格中相似,都是按行和列的格式组织的。其中每一行代表一条唯一的记录,每一列代表记录中的一个字段,如下图所示。

在这里插入图片描述

1.2 标识符命名规范

  1. 数据库名、表名不得超过30个字符,变量名限制为29个
  2. 只能包含大写、小写、数字字符以及下划线
  3. 同一个MySQL软件中,数据库不能同名;同一个库中,表不能重名;同一个表中,字段不能重名
  4. 不能和保留字、函数名冲突
  5. 保持字段名和类型的一致性:假如某个字段在一个表里面是整型,那在另一个表里面可就别变成字符串了

1.3 MySQL中的数据类型

类型具体类型
整数类型TINYINT、SMALLINT、MEDIUMINT、INT(或INTEGER)、BIGINT
浮点类型FLOAT、DOUBLE
定点数类型DECIMAL
位类型BIT
日期时间类型YEAR、TIME、DATE、DATETIME、TIMESTAMP
文本字符串类型CHAR、VARCHAR、TINYTEXT、TEXT、MEDIUMTEXT、LONGTEXT
枚举类型ENUM
集合类型SET
二进制字符串类型BINARY、VARBINARY、TINYBLOB、BLOB、MEDIUMBLOB、LONGBLOB
json类型JSON对象、JSON数组
空间数据类型单值:GEOMETRY、POINT、LINESTRING、POLYGON
集合:MULTPOINT、MULTILINESTRING、MULTIPOLGON、GEOMTRYCOLLECTION

其中,常用的几类类型介绍如下:

类型描述
INT4个字节
CHAR(size)定长字符数据,若未指定,默认为一个字符,最大长度255
VARCHAR(size)可变字符数据,更具字符串实际长度保存,必须指定长度
FLOAT(M,D)单精度,4个字节。M=整数位+小数位,D=小数位(D<=M<=255,0<=D<=30),默认M+D<=6
DOUBLE(M,D)双精度,8个字节。D<=M<=255,0<=D<=30,默认M+D<=15
DECIMAL(M,D)高精度,M+2个字节。D<=M<=65,0<=D<=30,默认最大取值范围和DOUBLE一样
DATE日期类型,格式‘YYY-MM-DD’
BLOD二进制心事的长文本数据,最大可达4G
TEXT长文本数据,最大可达4G

2. 创建和管理数据库

2.1 创建数据库

  • 方式1:创建数据库

    CREATE DATABASE 数据库名;
    
  • 方式2:创建数据库并指定字符集

    CREATE DATABASE 数据库名 CHARACTER SET "uft8";
    
  • 方式3:判断数据库是否已经存在,不存在则创建(推荐)

    CREATE DATABASE IF NOT EXISTS 数据库名;
    

    注意:数据库不能改名。一些可视化工具可以改名,它是创建新库,然后把所有表复制到新库,再把旧库删掉完成的。

数据库创建完成之后,可以通过SHOW CREATE DATABASE 数据库名;查看创建数据库时使用的语句。

我们来看看一个创建的例子:

CREATE DATABASE king;
SHOW CREATE DATABASE king;

在这里插入图片描述

我们查看一下,发现它默认创建的时候的字符集就是utf_8

2.2 使用数据库

  • 查看当前连接中有哪些数据库
SHOW DATABASES;
  • 切换数据库,在多个数据库之间切换
0USE 数据库名;
  • 查看当前使用的数据库
SELECT DATABASE();
  • 查看指定数据库所有表
SHOW TABLES FROM 数据库名;

下图是在我的电脑上执行以上语句得到的结果:

在这里插入图片描述

2.3 修改数据库

✨✨修改数据库字符集

ALTER DATABASE 数据库名 CHARACTER SET 字符集;	#比如 gbk、utf8
#查看默认字符集
SHOW VARIABLES LIKE '%character%';
#查看所有字符集
SHOW CHARSET;

本地执行结果如下:

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

2.4 删除数据库

  • 直接删除

    DROP DATABASE 数据库名;
    
  • 如果数据库存在则删除,否则报一个警告(不会报错)

    DROP DATABASE IF EXISTS 数据库名;
    

3.创建表

在 MySQL数据库管理系统中创建表通过SQL语句CREATE TABLE 来实现

3.1 创建方式1

自己指定字段和数据类型

✨✨语法:

CREATE TABLE [IF NOT EXISTS] 表名(
	字段名 数据类型,
    字段名 数据类型,
    ...
    字段名 数据类型,
);

✨✨范例:

CREATE TABLE myemp
(
    id INT COMMENT '员工编号',
    ename VARCHAR(20) COMMENT '员工名称',
    deptno INT COMMENT '所在部门编号',
    sal INT COMMENT '工资'
);

这里有一个词—COMMENT,也就是注释的意思,防止我们以后忘记这里代表什么含义,用如下语句查看:

SHOW CREATE TABLE mmp;

在这里插入图片描述

3.2 创建方式2

基于现有表创建新表

  • 基于现有表创建新表,同时导入数据

    #单个表
    CREATE TABLE myemp1
    AS
    SELECT empno,ename,sal FROM emp;
    
    #多个表
    CREATE TABLE myemp2
    AS
    SELECT e.empno,e.ename,e.sal,d.dname 
    FROM emp e JOIN dept d
    ON e.deptno=d.deptno;
    

在这里插入图片描述

  • 基于现有表创建新表,只复制表结构,不导入数据

    CREATE TABLE myemp3
    AS
    SELECT empno,ename,sal FROM emp WHERE 1 = 2;
    

在这里插入图片描述

3.3 查看表结构

✨✨创建完表,如果需要查看一下表的结构,可以通过执行SQL语句 DESCRIBE来实现,其语法形式如下:

DESC/DESCRIBE table_name;

DESC为DESCRIBE的简写形式,更为方便。

在这里插入图片描述

还有一种更详细查看表结构的语句:

SHOW CREATE TABLE table_name;

在这里插入图片描述

4. 修改表

✨修改数据表的前提是数据库中已经存在该表。修改表指的是修改数据库中已经存在的数据表的结构。修改数据表的操作也是数据库管理中必不可少的,就像画素描一样,画多了可以用橡皮擦掉,画少了可以用笔加上。

4.1 修改数据表

✨✨4.1.1 修改表名

方法一:通过 ALTER TABLE 语句来修改表名,语法规则如下:

ALTER TABLE <旧表名> RENAME [TO] <新表名>;

其中,TO 为可选参数,使用与否均不影响结果。

只能对一张表的表名进行修改。

范例:

ALTER TABLE myemp RENAME memp;

方法二:通过 RENAME TABLE 语句来修改表名,语法规则如下

RENAME TABLE <旧表名> TO <新表名>[,旧表名2 TO 新表名2]

范例:

RENAME memp TO myemp,myemp1 TO memp1;

可以同时修改多个表的表名。

✨✨4.1.2 修改字符集

通过ALTER TABLE语句来实现表字符集的修改,语法规则如下:

ALTER TABLE <表名> [DEFAULT] CHARACTER SET <字符集名> [DEFAULT] COLLATE <校对规则名>;

其中,DEFAULT 为可选参数,使用与否均不影响结果。

ALTER TABLE myemp CHARACTER SET gb2312;

4.2 增加字段

对于表,可以看成是由列和行来构成的,其中“列”经常被称为字段。

✨✨4.2.1 在最后添加字段

在创建表之后如果要增加一列,需要使用下面的语句。

ALTER TABLE table_name ADD 字段名 数据类型;

范例:

ALTER TABLE myemp ADD job VARCHAR(10);

✨✨4.2.2 在第一个位置添加字段

ALTER TABLE table_name ADD 字段名 数据类型 FIRST;

✨✨4.2.3 在指定位置添加字段

把字段1 添加到字段2之后

ALTER TABLE table_name ADD 字段名1 数据类型 AFTER 字段名2;

4.3 删除字段

ALTER TABLE table_name DROP 字段名;

4.4 修改字段

✨✨4.4.1 修改字段的数据类型

ALTER TABLE table_name MODIFY 字段名 数据类型;

✨✨4.4.2 修改字段名

ALTER TABLE table_name CHANGE 旧字段名 新字段名 数据类型;

如果数据类型和原来的数据类型一样,则只会修改字段名,如果数据类型不同,则同时会修改数据类型。

✨✨4.4.3 修改字段的顺序

ALTER TABLE table_name MODIFY	字段名 数据类型 FIRST;
ALTER TABLE table_name MODIFY	字段名1 数据类型 AFTER 字段名2;	
  • 第一个语句:把字段移动到第一个
  • 第二个语句:把字段1 移动到字段2之后

5. 删除表

DROP TABLE [IF EXISTS] table_name[,表1,表2...];

6.总结

本节主要为大家带来了MySQL表/数据库创建和管理的讲解,下节将为大家带来约束的讲解~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/716412.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

酷炫音乐盒: 使用Python和Tkinter打造自己的音乐播放器

前言 Python的Tkinter&#xff08;Tk接口&#xff09;是一个用于创建图形用户界面&#xff08;GUI&#xff09;的标准库。它是Python的内置模块&#xff0c;无需额外安装即可使用。Tkinter提供了一组部件&#xff08;如按钮、标签、文本框等&#xff09;和布局管理器&#xff…

ROS学习——运行管理

ROS是多进程(节点)的分布式框架&#xff0c;一个完整的ROS系统实现&#xff1a; 可能包含多台主机&#xff1b; 每台主机上又有多个工作空间(workspace)&#xff1b; 每个的工作空间中又包含多个功能包(package)&#xff1b; 每个功能包又包含多个节点(Node)&#xff0c;不同的…

MyBatis—操作数据库

MyBatis &#x1f50e;前置铺垫创建数据库MyBatis 的执行流程创建对应流程 &#x1f50e;MyBatis—查询查询用户信息执行流程创建实体类创建 Interface 与 xml在 xml 中编写 SQL 语句模拟执行流程 &#x1f50e;单元测试定义优点执行单元测试引入依赖生成单元测试编写代码Asser…

优思学院|制造不良品是品质成本意识的问题吗?

制造的最大错误&#xff0c;就是制造出不良品或者不适合的物品。 谁都知道制造出这类“不良品”会使成本增加&#xff0c;但是到底会增加什么成本&#xff0c;可能就不是人人 都清楚。 若是不小心制造出不适合品&#xff0c;浪费的成本除了该物品的材料费、加工人力的费用、设…

VR电力安全警示教育:身临其境体验事故伤害

VR电力安全警示教育由广州华锐互动开发&#xff0c;是一种利用虚拟现实技术模拟电厂安全事故的应用程序。该应用程序通过模拟真实的场景和情境&#xff0c;让用户身临其境地体验VR电力安全警示教育的过程&#xff0c;从而提高用户的安全意识和应对能力。 在VR电力安全警示教育中…

Linux下获取另外一个程序的标准输出和标准错误输出的一种实现方式

问题&#xff1a;一个程序如何获取另外一个程序的标准输出和标准错误输出&#xff1f; 标准输入&#xff0c;标准输出&#xff0c;标准错误输出是一个程序的基本组成&#xff0c;在Linux下一个程序调用另外一个程序&#xff0c;如何获取其标准输出和错误输出呢&#xff1f; 分析…

专用开发工具和环境在嵌入式系统开发中的重要性

嵌入式系统是一种特殊类型的计算机系统&#xff0c;其设计和开发用于控制特定设备或执行特定任务。以下是嵌入式系统的一些特点以及与其开发相关的专用工具和环境&#xff1a; 特定目标&#xff1a;嵌入式系统通常被设计用于执行特定的任务或控制特定的设备。它们被定制以满足特…

开发一款财经直播系统需要注意的方面

数据保护与隐私&#xff1a;确保用户的个人信息和交易数据得到有效的保护&#xff0c;遵守相关的数据保护法规。采用高级加密技术来保护用户的敏感信息&#xff0c;并建立安全的存储和传输机制。 信息真实性&#xff1a;提供准确、可信的财经信息&#xff0c;确保平台上发布…

【Jenkins】Jenkins构建后端流水线

目录 一、新建任务1、输入任务名称&#xff0c;选择构建项目类型&#xff08;这里我选择的是Maven项目&#xff09;&#xff0c;任务名称一般格式为&#xff1a;项目名称-前后端2、创建成功后的结果 二、配置流水线1、进入刚创建好的任务页面中&#xff0c;点击配置2、General配…

Loki+Grafana监控docker容器日志

目标&#xff1a;最近开发人员时常需要查看各个环境项目中容器日志&#xff0c;而直接通过ssh终端使用docker logs命令查看日志不太安全&#xff0c;这会导致很多人员知道服务器的账户和密码&#xff0c;有没有一种可以收集所有容器日志的平台系统。那么这套系统就是LokiGrafan…

3.3C++输入流

C 输入概述 C输入是指程序从外部获取数据的过程。 C提供多种输入方法&#xff0c;包括从键盘输入、从文件读取、从网络获取&#xff0c;最常用的是从键盘输入。 C输入数据的函数是cin&#xff0c;它可以读取各种类型的数据&#xff0c;包括整数、浮点数、字符和字符串等。 …

7.1.8 其他Linux支持的文件系统与VFS

虽然 Linux 的标准文件系统是 ext2 &#xff0c;且还有增加了日志功能的 ext3/ext4 &#xff0c;事实上&#xff0c;Linux 还有支持很多文件系统格式的&#xff0c; 尤其是最近这几年推出了好几种速度很快的日志式文件系统&#xff0c;包括 SGI 的 XFS 文件系统&#xff0c; 可…

css文字超出元素省略,单行、多行省略

效果图: 通用CSS .box {width: 500px;border: 1px solid red;padding: 10px;line-height: 24px;}1.单行省略 .singe-line {text-overflow: ellipsis;overflow: hidden;word-break: break-all;white-space: nowrap;}<p>单行省略</p><div class"singe-lin…

如何统一接口测试的功能、自动化和性能测试用例

服务端的测试&#xff0c;大多数内容都围绕着接口展开。对于接口测试&#xff0c;无非也是功能、自动化、性能测试为主&#xff0c;偶然想到一个问题&#xff0c;如果能写一个用例&#xff0c;在功能、自动化、性能三者的测试场景中重复使用&#xff0c;肯定能省去非常多的时间…

webpack相关面试题

webpack面试题 1.webpack和vite区别2.如何优化webpack打包速度&#xff1f;3.说说webpack中常见的Plugin&#xff1f;解决了什么问题4.说说如何借助webpack来优化前端性能&#xff1f;如何优化JS代码压缩CSS代码压缩Html文件代码压缩文件大小压缩图片压缩Tree ShakingusedExpor…

中小企业的数字化热情,从未像今年618这样滚烫

一年一度的618大促告一段落&#xff0c;我们可以总结一个趋势&#xff1a;C端消费者对大促的热情在消退&#xff0c;而B端企业&#xff0c;尤其是中小企业&#xff0c;对大促的热情则以肉眼可见的速度提升。 普通消费者也好&#xff0c;广大中小企业也罢&#xff0c;参与大促的…

SSMP整合案例(11) 在界面中实现添加操作

上文 SSMP整合案例(10) vue端调整项目环境 发送请求 基本界面编写我们搭建了基本的页面结构 然后 我们来做个新增的功能 首先 新增 我们肯定是用户点击了这个新建之后 我们再来处理这个逻辑 我们之前的代码 新增是有绑定 一个事件的 但是这个 AddBook中并没有内容 首先 我们…

想要经营好抖音小店,你还需要了解这些活动方法

抖音小店作为抖音上的新零售业务形态&#xff0c;旨在为用户提供更加便捷的购物体验&#xff0c;同时也为商家提供了一个新的销售渠道。在使用抖音小店的过程中&#xff0c;有一些主流的玩法&#xff0c;今天不若与众科技就来介绍一下。 1. 抖音小店开通直播带货服务 开通直播…

PowerToys工具介绍及使用

目录 介绍下载使用和功能介绍1.安装后的效果2.始终置顶3.唤醒4.颜色选择器5.FancyZones 窗口分屏器6.File Locksmith7.文件资源管理器加载项8.Host文件编辑器9.图像大小调整器10.键盘管理器11.速览12.PowerRename13.文本提取器 介绍 PowerToys 是微软最初发布于 Windows 95 平…

计算机毕业论文选题推荐|软件工程|小程序系列选题

文章目录 导文题目导文 计算机毕业论文选题推荐|软件工程 (***语言)==使用其他任何编程语言 例如:基于(***语言)门窗账务管理系统的设计与实现 得到:基于JAVA门窗账务管理系统的设计与实现 基于vue门窗账务管理系统的设计与实现 等等 题目 基于微信小程序和深度学习的宠物…