当前位置: 首页 > news >正文

【数据库】MySQL表的操作

目录

一.创建表

二.查看表

三.修改表

 四.删除表


一.创建表

基本语法:

CREATE TABLE table_name(field1 datatype,field2 datatype,field3 datatype)  character set 字符集 collate 校验规则 engine 储存引擎

field表示列名

datatype表示列的类型

charatcer set 表示字符集,如果没有指定字符集,就以所在数据库的字符集为准

collate 表示校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

 首先先创建一个数据库,并且在右方可以查看监视我们创建的数据库user_db

接下来使用上方给出的语句创建一个表

mysql> create table if not exists user1(-> id int,-> name varchar(20) comment '用户名',-> password char(32) comment '用户名密码',-> birthday date comment '用户的生日'-> ) character utf_8 collate utf8_general_ci engine MyIsam;

 我们可以在右边查看一下db.opt中的设置的character和collate的参数,可以看到跟我们建表设置的是一样的,如果我们建表时不写character和collate,建表时就会默认用db.opt里的参数确定字符标准,此时我们可以查看创建了一个表时数据库里会创建三个文件

 此时已经不同的存储引擎,创建表的文件不一样。
users 表存储引擎是 MyISAM ,在数据目中有三个不同的文件,分别是:
users.frm:表结构
users.MYD:表数据
users.MYI:表索引。

但是当我们使用的存储引擎是Innodb时,所创建的文件又会是frm和ibd两种文件后缀的文件。

二.查看表

当我们创建了一个表时,我们可以选择查看操作查看表的内容

desc 表名

我们刚刚创建了一个名为user1的表,此时可以使用 desc user1来查看表

 可以看到表中有我们刚刚创建好的表头。

三.修改表

在项目实际开发中,经常修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型,
表的存储引擎等等。我们还有需求,添加字段,删除字段等等。这时我们就需要修改表。

ALTER TABLE tablename ADD (column datatype [DEFAULT expr][,column
datatype]...);ALTER TABLE tablename MODIfy (column datatype [DEFAULT expr][,column
datatype]...);ALTER TABLE tablename DROP (column)

在users表添加二条记录

mysql> insert into users values(1,'a','b','1982-01-04'),(2,'b','c','1984-01-
04');

在users表添加一个字段,用于保存图片路径

mysql> alter table users add assets varchar(100) comment '图片路径' after
birthday;

此时我们再使用desc users来查看表头

+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int(11)      | YES |      | NULL    |       |
| name     | varchar(20)  | YES |      | NULL    |       |
| password | char(32)     | YES |      | NULL    |       |
| birthday | date         | YES |      | NULL    |       |
| assets   | varchar(100) | YES |      | NULL    |       |
+----------+--------------+------+-----+---------+-------+

就可以看到最后一行多出来了一行我们刚添加的asserts来存放我们的图片路径

此时我们可以使用

select * from users;

来查看刚刚我们所插入的内容

插入新字段后,对原来表中的数据没有影响:

mysql> select * from users;
+------+------+----------+------------+-------+
| id  | name | password | birthday  | assets |
+------+------+----------+------------+-------+
|  1  | a    | b        | 1982-01-04 | NULL |<= 原来的数据仍然存在
|  2  | b    | c        | 1984-01-04 | NULL |
+------+------+----------+------------+-------+

此时我们可以 修改表的内容,比如修改name,将其长度改成60

alter table users modify name varchar(60);
mysql> desc users;
+----------+--------------+------+-----+---------+-------+
| Field  | Type        | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id     | int(11)     | YES |   | NULL  |    |
| name   | varchar(60) | YES |   | NULL  |    |<= 长度变成60
| password| char(32)  | YES |   | NULL  |    |
| birthday| date      | YES |   | NULL  |    |
| assets  |varchar(100)| YES | | NULL  |    |
+----------+--------------+------+-----+---------+-------+

 可以看到我们刚刚的操作可以使name 的字段变为60.

同时我们也可以修改表名,将users修改为employee

alter table users rename to employee;

 可以看到我们表的内容和之前的users是一样的,只是修改了表明而已。

mysql> select * from employee;
+------+------+------------+-------+
| id  | name | birthday  | assets |
+------+------+------------+-------+
|   1 | a    | 1982-01-04 | NULL |
|   2 | b    | 1984-01-04 | NULL |
+------+------+------------+-------+

 同样的我们也可以修改表中字段的内容

例如将name列修改为xingming

alter table employee change name xingming varchar(60); --新字段需要完整
定义

 可以看到下表中的内容name字段已经修改为了xingming

mysql> desc employee;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int(11)      | YES |      | NULL  |    |
| xingming | varchar(60)  | YES |      | NULL  |    |
| birthday | date         | YES |      | NULL  |    |
| assets   | varchar(100) | YES |      | NULL  |    |
+----------+--------------+------+-----+---------+-------+

接下来是删除操作 

需要注意的是:删除字段一定要小心,删除字段及其对应的列数据都没了。

这里我们以删除password行为例

使用命令

alter table users drop password;

在使用desc user展示出我们修改后的表

mysql> desc users;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int(11)      | YES |      | NULL  |    |
| name     | varchar(60)  | YES |      | NULL  |    |
| birthday | date         | YES |      | NULL  |    |
| assets   | varchar(100) | YES |      | NULL  |    |
+----------+--------------+------+-----+---------+-------+

 四.删除表

删除表非常简单

格式语句如下

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

删除我们刚刚操作的表t1 

drop table t1;

 以上就是mysql数据库中的对表的操作

相关文章:

【数据库】MySQL表的操作

目录 一.创建表 二.查看表 三.修改表 四.删除表 一.创建表 基本语法&#xff1a; CREATE TABLE table_name(field1 datatype,field2 datatype,field3 datatype) character set 字符集 collate 校验规则 engine 储存引擎field表示列名 datatype表示列的类型 charatcer se…...

【mybatis解决oracle查询in超过1000条数据】

1、因为代码中前人未考虑in 数据可能大于1000&#xff0c;导致现在系统报错&#xff0c;MPP low前人 直接上sql select * from table a <where><if test"list ! null and list.size > 0">and a.name in<foreach collection"list" inde…...

EasyExcel之动态表头导出不生效

今天接到一个优化需求&#xff0c;表格导出后的表头顺序和页面不一致&#xff0c;要优化成一致的。根据传入的字段&#xff0c;动态导出数据&#xff0c;并保证顺序。 我看到导出的实体类都有ExcelProperty注解&#xff0c;同时也在官网查看了这注解的含义和使用。 ExcelPrope…...

appium元素定位工具_uiautomatorviewer.bat

特点&#xff1a; uiautomatorviewer是android-sdk自带的元素定位工具uiautomatorviewer只能用于安卓系统&#xff1b;它是通过截屏分析XML布局文件方式&#xff0c;来提供控件信息的查看服务 uiautomatorviewer.bat 基本使用 路径&#xff1a;这个工具是Android SDK中自带&…...

手机离线翻译哪个好?断网翻译也能超丝滑

有时在异国他乡&#xff0c;面对语言不通的窘境&#xff0c;即便是简单的对话也变得异常困难&#xff0c;真是挑战满满&#xff01; 然而&#xff0c;能离线翻译的软件让语言障碍不再是问题&#xff0c;不必依赖网络也能轻松进行翻译啦~ 只需下载所需的语言包&#xff0c;选择…...

神器!!Python热重载调试【送源码】

在 Python 开发的路上&#xff0c;调试是我们不可避免的一环。 而今天推荐的开源项目Reloadium &#xff0c;让你在不重启程序的情况下实现代码的即时更新和调试。 &#x1f504; Reloadium 功能亮点&#xff1a; 1. 热重载魔法&#xff1a; Reloadium 不仅仅能够实现代码的…...

Flutter基础 -- Dart 语言 -- 列表集合枚举

目录 1. 列表 List 1.1 初始 1.2 声明 1.2.1 自动 1.2.2 定长 1.2.3 生成数据 1.3 属性 1.4 方法 1.4.1 添加 1.4.2 查询 1.4.3 删除 1.4.4 Range 1.4.5 洗牌 1.4.6 排序 1.4.7 复制子列表 1.4.8 操作符 2. 集合 Map 2.1 初始 2.2 声明 2.2.1 松散 2.2.2 …...

怎么花草识别?方法有三种!

怎么花草识别&#xff1f;在这个五彩斑斓的世界里&#xff0c;花草是我们生活中不可或缺的一部分。它们点缀着我们的环境&#xff0c;为我们带来无尽的美丽与惊喜。然而&#xff0c;面对众多的花草种类&#xff0c;你是否曾感到困惑和迷茫&#xff0c;不知道如何识别它们&#…...

【qt】自定义对话框

自定义对话框 一.自定义对话框的使用1.应用场景2.项目效果3.界面拖放4.模型和视图的设置5.action功能实现 二.自定义对话框的创建1.设置对话框界面2.创建对话框 三.对话框的功能与样式实现1.对话框数据的交换2.对话框的显示3.设置对话框的特性4.完成按钮的功能 四.编辑表头的对…...

汽车IVI中控开发入门及进阶(二十二):video decoder视频解码芯片

前言: 视频解码器在许多汽车、专业和消费视频应用中仍有需求。Analog Devices是模拟视频产品领域的行业领导者,提供一系列视频解码器,可将标准(SD,standard definition)和高清(HD,High definition)分辨率的模拟视频高质量转换为MIPI或TTL格式的数字视频数据。典型的应…...

混沌测试介绍

混沌测试介绍 1. 混沌测试简介 混沌测试&#xff08;Chaos Engineering&#xff09;是一种测试方法&#xff0c;通过在生产环境中故意引入故障&#xff0c;测试系统在异常情况下的表现&#xff0c;以提高系统的弹性和鲁棒性。其目标是确保系统能够在面对不可预见的事件或故障…...

python 单链表创建,遍历

# !/usr/bin/python3 # -*- coding:utf-8 -*- """ author: JHC000abcgmail.com file: 111.py time: 2024/05/30 21:37:09 desc:""" # 定义单链表结构 class ListNode:def __init__(self,value0,nextNone):self.value valueself.next nextdef _…...

【方法】如何取消PPT“以只读方式打开“?

以“只读方式”打开的PPT&#xff0c;可能会受到不同的限制&#xff0c;比如无法编辑修改内容&#xff0c;无法保存原文件等。那如何取消PPT的“只读方式”呢&#xff1f;不同形式的“只读方式”&#xff0c;取消方法不同&#xff0c;下面一起来看看吧&#xff01; “只读方式”…...

ChatTTS,语气韵律媲美真人的开源TTS模型,文字转语音界的新魁首,对标微软Azure-tts

前两天 2noise 团队开源了ChatTTS项目&#xff0c;并且释出了相关的音色模型权重&#xff0c;效果确实非常惊艳&#xff0c;让人一听难忘&#xff0c;即使摆在微软的商业级项目Azure-tts面前&#xff0c;也是毫不逊色的。 ChatTTS是专门为对话场景设计的文本转语音模型&#x…...

Django企业招聘后台管理系统开发实战四

前言 首先我们看一下产品的需求背景&#xff0c;这个产品为了解决招聘面试的过程中&#xff0c;线下面试管理效率低&#xff0c;面试过程和结果不方便跟踪的痛点 招聘管理的系统几乎是每一家中小公司都需要的产品 我们以校园招聘的面试为例子来做 MVP 产品迭代 首先我们来看一下…...

APP上架 篇一:上架资质要求

文章目录 系列文章Apple Store商店上架App官方文档资质要求费用详情Google Play商店上架App官方文档资质要求费用详情华为应用商店上架App官方文档资质要求费用详情小米应用商店上架App官方文档资质要求...

C++入门之类和对象

目录 1.C相对于C语言的一些不同的小语法 1.1命名空间 1.2C输入&输出 1.3缺省参数 1.4函数重载 1.5引用 1.6内联函数 1.7auto 1.8nullptr 2.类的引入 2.1类的内部 2.2this指针 2.3类的默认成员函数 2.3.1构造函数 2.3.2析构函数 2.3.3拷贝构造 2.4运…...

html中table的替代方案

使用插件&#xff0c;2个功能强大的table插件 DataTables | Javascript table library 专门的table处理插件&#xff0c;下载时可以配置是否支持bootstrap和jquery ui等。参数众多。表格组件 table - Layui 文档 国内的插件&#xff0c;只支持jquery&#xff0c;配合默认的layu…...

单片机的自动化编程语言:深度探索与未来展望

单片机的自动化编程语言&#xff1a;深度探索与未来展望 单片机作为现代电子设备的核心控制单元&#xff0c;其自动化编程语言的发展与应用&#xff0c;对提升设备性能、简化编程流程具有重大意义。本文将从四个方面、五个方面、六个方面和七个方面&#xff0c;对单片机的自动…...

k8s 部署 Dashboard

Dashboard 是官方提供的一个UI&#xff0c;可用于基本管理K8s资源。 # 在master节点执行# wget \ https://raw.githubusercontent.com/kubernetes/dashboard/v2.5.0/aio/deploy/recommended.yaml vi recommended.yaml 增加 nodePort: 30001 和 type: NodePort ...... spec:p…...

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

【解密LSTM、GRU如何解决传统RNN梯度消失问题】

解密LSTM与GRU&#xff1a;如何让RNN变得更聪明&#xff1f; 在深度学习的世界里&#xff0c;循环神经网络&#xff08;RNN&#xff09;以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而&#xff0c;传统RNN存在的一个严重问题——梯度消失&#…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

Matlab | matlab常用命令总结

常用命令 一、 基础操作与环境二、 矩阵与数组操作(核心)三、 绘图与可视化四、 编程与控制流五、 符号计算 (Symbolic Math Toolbox)六、 文件与数据 I/O七、 常用函数类别重要提示这是一份 MATLAB 常用命令和功能的总结,涵盖了基础操作、矩阵运算、绘图、编程和文件处理等…...

工业自动化时代的精准装配革新:迁移科技3D视觉系统如何重塑机器人定位装配

AI3D视觉的工业赋能者 迁移科技成立于2017年&#xff0c;作为行业领先的3D工业相机及视觉系统供应商&#xff0c;累计完成数亿元融资。其核心技术覆盖硬件设计、算法优化及软件集成&#xff0c;通过稳定、易用、高回报的AI3D视觉系统&#xff0c;为汽车、新能源、金属制造等行…...

RNN避坑指南:从数学推导到LSTM/GRU工业级部署实战流程

本文较长&#xff0c;建议点赞收藏&#xff0c;以免遗失。更多AI大模型应用开发学习视频及资料&#xff0c;尽在聚客AI学院。 本文全面剖析RNN核心原理&#xff0c;深入讲解梯度消失/爆炸问题&#xff0c;并通过LSTM/GRU结构实现解决方案&#xff0c;提供时间序列预测和文本生成…...

均衡后的SNRSINR

本文主要摘自参考文献中的前两篇&#xff0c;相关文献中经常会出现MIMO检测后的SINR不过一直没有找到相关数学推到过程&#xff0c;其中文献[1]中给出了相关原理在此仅做记录。 1. 系统模型 复信道模型 n t n_t nt​ 根发送天线&#xff0c; n r n_r nr​ 根接收天线的 MIMO 系…...