MySQL中表的操作

news2025/2/23 2:30:28

目录

一、查看所有表

1.1、语法

二、创建表

2.1、语法

2.2、示例:

2.3、创建数据加时使⽤校验语句[if not exists] 

三、查看表结构

3.1、语法

3.2、示例

四、删除表

4.1、语法

4.2、示例 

4.3、注意事项

五、主要数据类型

5.1、数值类型

 5.2、日期和时间类型

5.3、字符串类型 

5.3.1、char 和 varchar 的区别

存储方式:char 固定长度,varchar 可变长度。char 类型会占用固定长度的存储空间,例如如果定义了一个 char(10) 类型的列,无论实际存储的数据长度是多少,都会占用10个字符的存储空间。而 varchar 类型则根据实际存储的数据长度来占用存储空间,例如如果定义了一个 varchar(10) 类型的列,存储一个5个字符长的字符串,则只会占用5个字符的存储空间。

5.3.2、如何选择char和varchar


一、查看所有表

1.1、语法

1 show tables;

注意:创建表时,需要先选择要操作的数据库

如下图:我们选择aokey数据库,使用SQL语句查看表结构,显示为空,因为我们暂未在该数据库中创建表。,下面我们先学习怎么创建表:

二、创建表

2.1、语法

create table aokey_table(
    id bigint,
    name varchar(20)
);

 

详细的建表语法参考相关网站:

https://dev.mysql.com/doc/refman/8.0/en/create-table.html 

2.2、示例:

此时,我们再来查看表,如下图显示,即表示创建成功:

 

2.3、创建数据加时使⽤校验语句[if not exists] 

如果该1数据库中表已存在,则会报出一个警告 :

        表 `aokey_table` 已存在 

三、查看表结构

3.1、语法

1 desc 表名;

3.2、示例

解析: 

        (1)Field表中的字段

        (2)Type字段的数据类型

        (3)Null当前的字段是否允许为 Null

        (4)Key键值的类型

        (5)Defauult当前列的默认值,不指定时为 NULL

        (6)Extra其他扩展内容(后期展示)

四、删除表

4.1、语法

1 DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...

        TEMPORARY:表示临时表

        tbl_name:要删除的表名

        [, tbl_name] ...:一个drop可以删除很多表,中间用逗号隔开

4.2、示例 

mysql> drop table aokey_table;
Query OK, 0 rows affected (0.01 sec)

mysql> show tables;
Empty set (0.00 sec)

删除后,aokey 数据库为空

4.3、注意事项

•  删除表是⼀个危险操作,执行删除语句时⼀定要谨慎

•  删除表成功后,磁盘上对应的数据文件也会被删除

•  ⼀次可以删除多个表,表与表之间用逗号隔开

五、主要数据类型

5.1、数值类型

 5.2、日期和时间类型

5.3、字符串类型 

5.3.1、char 和 varchar 的区别
  1. 存储方式:char 固定长度,varchar 可变长度。char 类型会占用固定长度的存储空间,例如如果定义了一个 char(10) 类型的列,无论实际存储的数据长度是多少,都会占用10个字符的存储空间。而 varchar 类型则根据实际存储的数据长度来占用存储空间,例如如果定义了一个 varchar(10) 类型的列,存储一个5个字符长的字符串,则只会占用5个字符的存储空间。

  2. 存储效率:char 类型在存储和检索时效率更高。由于 char 类型是固定长度的,所以在存储和读取数据时更快。而 varchar 类型由于可变长度,存储和读取时可能需要更多的操作。所以在需要频繁读写数据的场景下,char 类型更适合。

  3. 存储空间:在存储相同数据的情况下,char 类型占用的存储空间通常会比 varchar 类型大。由于 char 类型是固定长度的,所以无论存储的数据长度是多少,都会占用固定长度的存储空间。而 varchar 类型会根据实际存储的数据长度来占用存储空间,所以通常情况下占用的存储空间会比 char 类型少。

5.3.2、如何选择char和varchar

•    如果数据确定长度都一样,就使用定长 char 类型,比如:身份证,md5,学号,邮编。

•    如果数据 ch 度有变化,就使用变长 varchar , 比如:名字,地址,但要规划好长度,保证最长的字符串能存的进去。

•    定长 char 类型比较浪费磁盘空间,但是效率⾼。

•    变长 varchar 类型比较节省磁盘空间,但是效率低。

•    定长 char  类型会直接开辟好对应的存储空间。

•    变长 varchar 类型在不超过定义长度范围的情况下用多少开辟多少存储空间 。

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

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

相关文章

揭秘语音识别巨头1:国内外顶尖技术服务商全解析01(万字长文)

一、学习导航 解密语音识别巨头:国内顶尖技术服务商全解析00:学习地图 解密语音识别巨头:国内顶尖技术服务商全解析01:微软语音,商业No.1 解密语音识别巨头:国内顶尖技术服务商全解析02:百度…

ProxyPin 抓包,原来可以这么简单!

你是否还在为网络请求的抓包发愁?其实,ProxyPin 可以让抓包操作变得异常简单!不需要复杂的设置,也不用繁琐的配置,轻松几步就能实现。让我们一起来看看吧! 抓包操作常用于测试网络请求、分析接口响应&#…

Javascript剩余参数、arguments对象和柯里化函数

在JavaScript中,函数的剩余参数(Rest Parameters)和arguments对象都是用于处理函数接收的不定数量参数的机制。虽然它们的功能相似,但使用方式和适用场景有所不同。下面详细解释这两个概念。 剩余参数(Rest Parameter…

手撕数据结构 —— 栈(C语言讲解)

目录 1.认识栈 什么是栈 栈的示意图 2.如何实现栈 3.栈的实现 Stack.h中接口总览 具体实现 结构的定义 初始化栈 销毁栈 入栈 出栈 取栈顶元素 获取有效元素的个数 判断栈是否为空 4.完整代码附录 Stack.h Stack.c 1.认识栈 什么是栈 栈是一种特殊的线性表…

【动物识别系统】Python+卷积神经网络算法+人工智能+深度学习+机器学习+计算机课设项目+Django网页界面

一、介绍 动物识别系统。本项目以Python作为主要编程语言,并基于TensorFlow搭建ResNet50卷积神经网络算法模型,通过收集4种常见的动物图像数据集(猫、狗、鸡、马)然后进行模型训练,得到一个识别精度较高的模型文件&am…

DS线性表之单链表的讲解和实现(2)

文章目录 前言一、链表的概念二、链表的分类三、链表的结构四、前置知识准备五、单链表的模拟实现定义头节点初始化单链表销毁单链表打印单链表申请节点头插数据尾插数据头删数据尾删数据查询数据在pos位置之后插入数据删除pos位置之后的数据 总结 前言 本篇的单链表完全来说是…

使用PyTorch从0实现Fashion-MNIST数据集分类

完整代码: from d2l import torch as d2l import torch from torchvision import transforms from torchvision import datasets from torch.utils.data import DataLoader import matplotlib.pyplot as plt from IPython import displaydef get_fashion_mnist_la…

BBR 的不公平性

BBR 公平收敛在相图中的细节 和 aimd,bbr,inflt 守恒的收敛相图总结 已经介绍了 BBR 的 gain 不公平性,本文介绍 BBR 的 RTT 不公平性。 直觉上,BBR 采用 probe_quota gain * maxbw * minrtt 来 probe 带宽,minrtt 越…

掌握Postman,开启API测试新纪元!

Postman是一款流行的API测试工具和开发环境,旨在简化API开发过程、测试和文档编制。它提供了一套功能强大的工具,帮助开发人员更轻松地构建、测试和调试Web服务。 Postman 工具的优势 Postman 可以快速构建请求、还可以保存以后再使用。 Postman 还提…

改进系列:TransUnet结合SAM box改进对MICCAI FLARE腹部13器官图像分割

目录 1、前言 2、实现思路 3、实验代码 3.1 环境配置 3.2 数据集 3.3 训练 3.4 指标 3.5 推理 4、其他 1、前言 本章尝试将TransUnet和SAM结合,以期望达到更换的模型 TransUnet作为医学图像分割的基准,在许多数据集上均取得了很好的效果&#x…

JavaSE——认识异常

1.概念 在生活中,人有时会生病,在程序中也是一样,程序猿是一帮办事严谨、追求完美的高科技人才。在日常开发中,绞尽脑汁将代码写的尽善尽美,在程序运行过程中,难免会出现一些奇奇怪怪的问题。有时通过代码很…

2024/10/12 计组大题专训

2018: 2019: 2020: 2021:

【多线程】多线程(12):多线程环境下使用哈希表

【多线程环境下使用哈希表(重点掌握)】 可以使用类:“ConcurrentHashMap” ★ConcurrentHashMap对比HashMap和Hashtable的优化点 1.优化了锁的粒度【最核心】 //Hashtable的加锁,就是直接给put,get等方法加上synch…

AI+若依框架day02

项目实战 项目介绍 帝可得是什么 角色和功能 页面原型 库表设计 初始AI AIGC 提示工程 Prompt的组成 Prompt练习 项目搭建 点位管理 需求说明 库表设计

多线程学习篇四:synchronized

1. synchronized 的使用 1.1 作用于实例方法 Slf4j(topic "c.Test01") public class Test01 {public synchronized void method1() {// 代码逻辑} } 等价于下列写法: Slf4j(topic "c.Test01") public class Test01 {public void method1…

基于机器学习的虚假新闻智能检测系统

温馨提示:文末有 CSDN 平台官方提供的学长 QQ 名片 :) 1. 项目简介 随着互联网的普及和社交媒体的发展,虚假新闻(fake news)问题日益严重,对社会和个人产生了诸多负面影响。传统的新闻审核方法通常依赖于人工审核&…

基于gewechat制作第一个微信聊天机器人

Gewe 个微框架 GeWe(个微框架)是一个创新性的软件开发框架,为个人微信号以及企业信息安全提供了强大的功能和保障。GeWe的设计旨在简化开发过程,使开发者能够高效、灵活地构建和定制通信协议,以满足不同应用场景的需求…

SSL---SSL certificate problem

0 Preface/Foreword 0.1 SSL certificate problem 开发过程中,gitlab-runner连接gitlab时候出现SSL 证书问题。 场景:公司的gitlab runner服务器引入了SSL证书,每年都会主动更新一次。当前的gitlab-runner运行在PC机器上,但是g…

ZYNQ使用XGPIO驱动外设模块(前半部分)

目录 目录 一、新建BD文档,添加ZYNQ处理器 1.BD文档: 2.在Vivado中,BD文件的生成过程通常包括以下步骤: 1)什么是Tcl Console: 3.PL部分是FPGA可编程逻辑部分,它提供了丰富的IO资源,可以用于实现各种硬件接口和功…

刘文超数量关系笔记

第一章解题技巧 第一节代入排除法 代入排除是数量关系第一大法。 代入排除顾名思义是将答案选项代入原题目,与题意不符的选项即可排除, 最终得出正确答案。 优先使用代入排除的题型: (1)多位数问题、余数问题、年龄…