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

MySQL 基础知识(四)之表操作

目录

1 约束

2 查看已有表

3 创建表

4 查看表结构

5 修改表

6 删除表


1 约束

  • 主键约束 primary key:唯一,标识表中的一行数据,此列的值不可重复,且不能为 NULL,此外,可以多个列组成主键
  • 唯一约束 unique:唯一,标识表中的一行数据,该行不可重复,可以为 NULL
  • 非空约束 not null:非空,约束此列的每一个单元格不允许有 NULL
  • 默认值约束 default:为列赋予默认值,当新增的数据不指定值时,可以通过 default 设置默认值进行填充
  • 外键约束 foreign key:从表只能添加主表已有的数据。两张表存在引用关系时,执行删除操作需要注意,先删除从表(引用表、外键表),再删除主表(被引用表、主键表)
  • 自动增长列 auto_increment:自动增长,给主键数值列添加自动增长。从1开始,每次加1。不能单独使用,和主键搭配

2 查看已有表

查看已有表可以通过 show tabes; 也可通过 show tables from 数据库名;

show tables;
show tables from study;

  c193bc52d403489e8cb318b6b9b7e0fc.png   40373aeadc384b898ad4d5b28b6d367b.png

3 创建表

drop table if exists person; #如果表 person 已存在,则删除 
create table person (
id int(10) primary key auto_increment, #主键,自动增长
name varchar(14) unique not null, #该行不重复,不为空
age int,
sex char(10) default '女' #没有插入该列,填入默认值"女"
)charset=utf8; #utf-8 编码#多行插入
insert into person(name, age, sex) values
('西施', 18, '女'),
('大乔', 32, null),
('王昭君', 24, null);

通过 “source sql 文件地址”导入

82cff851d1a14bce81e86ff6e5b68447.png

sex 列设置为 default,只有不插入该列,才会填入默认值

insert into person(name,age) values('赵飞燕',27);

604c86a66d3944eeb3ce74f8204b6faf.png

name 列设置为 unique not null,则该列名字不能重复,也不能为 NULL

insert into person(name,age) values('赵飞燕', 25);
insert into person(name,age) values(null, 25);

b0fb3c0644804c69994d47d1af9c1cd4.png

4 查看表结构

show create table perosn;

ad17695ac7b94a68874fa605e4e1ba8b.png

  • ENGINE 用于设置存储引擎
  • AUTO_INCREMENT 为下一条插入数据的主键值,一般是最后一条数据的主键值 + 1,其他情况,如删除整张表的数据(表还在),再重新插入,此时第一条数据的主键值则从 AUTO_INCREMENT 保存的值开始。当然,以上情况都基于主键设置了 auto_increment
  • DEFAULT CHARSET 用于设置字符集编码格式
desc person;
describe person;
explain person;
show columns from person;

上述四行代码作用相同,都可以查看表相关列信息

16eb9f153ccd4a64959ebc66a56ba5fb.png

5 修改表

 表中添加新列,alter table 表名 add 列名 数据类型 [约束] ;

alter table person add height int;

8220bd5d55d049a2ad6bc42bad39cf5a.png

修改表中列的数据类型和约束,alter table 表名 modify 列名 数据类型 [约束] ;

alter table person modify height int default 168;

0b4be0abadfe494bbfdf447af3a9d15d.png

 ce0a7ee2830e4f65b1e83db809d9f312.png

改变列名,alter table 表名 change 旧列名 新列名 数据类型 约束。改变列名时也可以更改数据类型和约束。

alter table person change height high int;

a04708abf76044edabacc9dde862e1ae.png

2573bca058574ad28ef9f99c9deb05de.png

删除列,alter table 表名 drop 列名

alter table person drop high;

8af0bb4becc04f08b4f2e06ebc501716.png

修改表名,alter table 旧表名 rename 新表名

alter table person rename student;

46ab2febd0844d458fbfd3a3ec5e4a63.png

6 删除表

drop table student;

b013fbdac9dd4935826eb012b1d1a194.png

相关文章:

MySQL 基础知识(四)之表操作

目录 1 约束 2 查看已有表 3 创建表 4 查看表结构 5 修改表 6 删除表 1 约束 主键约束 primary key:唯一,标识表中的一行数据,此列的值不可重复,且不能为 NULL,此外,可以多个列组成主键唯一约束 uniq…...

计算机网络——10FTP

FTP FTP:文件传输协议 向远程主机上传输文件或从远程主机接收文件客户/服务器模式 客户端:发起传输的一方服务器:远程主机 ftp:RFC 959ftp服务器:端口号为21 FTP:控制连接与数据连接分开 控制连接 FTP客户端与FTP服…...

javascript中的this指向

文章目录 探索 JavaScript 中的神奇之谜:this关键字解析this 是什么?为何 this如此重要?this 的工作原理实例解析默认绑定隐式绑定显式绑定new 绑定 探索 JavaScript 中的神奇之谜:this关键字解析 JavaScript,作为一门…...

WebServer 之 http连接处理(下)

目录 ✊请求报文--解析 流程图 && 状态机 状态机 -- 状态转移图 主状态机 从状态机 http 报文解析 HTTP_CODE 含义 从状态机 逻辑 主状态机 逻辑 🐞请求报文--响应 基础API stat mmap iovec writev 流程图 HTTP_CODE 含义(2) 代码分析 …...

Android电量相关知识

关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、商业变现、人工智能等,希望大家多多支持。 目录 一、导读二、概览三、 查看耗电情况3.1 注册广播 ACTION…...

【Java多线程】线程中几个常见的属性以及状态

目录 Thread的几个常见属性 1、Id 2、Name名称 3、State状态 4、Priority优先级 5、Daemon后台线程 6、Alive存活 Thread的几个常见属性 1、Id ID 是线程的唯一标识,由系统自动分配,不同线程不会重复。 2、Name名称 用户定义的名称。该名称在各种…...

鸿蒙OS跨进程IPC与RPC通信

一、IPC与RPC通信概述 基本概念 IPC(Inter-Process Communication)与RPC(Remote Procedure Call)用于实现跨进程通信,不同的是前者使用Binder驱动,用于设备内的跨进程通信,后者使用软总线驱动…...

Effective Objective-C 学习(三)

理解引用计数 Objective-C 使用引用计数来管理内存:每个对象都有个可以递增或递减的计数器。如果想使某个对象继续存活,那就递增其引用计数:用完了之后,就递减其计数。计数变为 0时,就可以把它销毁。 在ARC中&#xf…...

蓝桥杯备赛攻略

背景 第十五届蓝桥杯大赛快要到比赛的时间了,按照惯例省赛就在4月9号开赛。有很多的小伙伴都报名了这次比赛,也有很多的同学问我应该怎么训练,什么水平可以拿奖。我自己也已经参加过两届蓝桥杯大赛了,拿到过国赛三等奖&#xff0…...

react反向代理

http-proxy-middleware 使用npm安装 npm i -D http-proxy-middleware 文档 点击查看 关键代码 const { createProxyMiddleware } require(http-proxy-middleware);module.exports function(app) {app.use(/api, // api开头的地址的请求createProxyMiddleware({target: ht…...

债券专题二:可转债估值-二叉树模型

1. 模型背景 由于可转债自身的属性较多,因此对其定价的难度也会加大,在诸多影响因素中,未来的股价占比最高。由于股价的不可预测性,导致了可转债的定价在实际交易中作用非常有限。随着可转债发行数量和规模的增大,越…...

【闲谈】开源软件的崛起与影响

随着信息技术的快速发展,开源软件已经成为软件开发的趋势,并产生了深远的影响。开源软件的低成本、可协作性和透明度等特点,使得越来越多的企业和个人选择使用开源软件,促进了软件行业的繁荣。然而,在使用开源软件的过…...

【教程】Linux使用aria2c多线程满速下载

转载请注明出处&#xff1a;小锋学长生活大爆炸[xfxuezhang.cn] 安装aria2c&#xff1a; sudo apt-get install aria2多线程下载&#xff1a; aria2c -x 16 -s 16 <url> 比如&#xff1a; aria2c -x 16 -s 16 http://images.cocodataset.org/zips/test2017.zip...

【漏洞复现】蓝网科技临床浏览系统信息泄露漏洞

Nx01 产品简介 蓝网科技临床浏览系统是一个专门用于医疗行业的软件系统&#xff0c;主要用于医生、护士和其他医疗专业人员在临床工作中进行信息浏览、查询和管理。 Nx02 漏洞描述 蓝网科技临床浏览系统存在信息泄露漏洞&#xff0c;攻击者可以利用该漏洞获取敏感信息。 Nx03…...

JSON转换List<Map<String, Object>>、Map<String, Object>

废话就不说了 早上10点研究到现在 获取redis的JSON字符串 String getPalletListNew redisService.getRedis(“getPalletListNew”, abroad “” goodsLevel “” startPort “” destinationPort “” maxTon “” minTon); 转换Map<String,Object> public …...

单主模式和多主模式切换

1 组复制模式切换注意点 组复制有两种运行模式&#xff0c;一种是单主模式&#xff0c;一种是多主模式。这个模式是在整个组中设置的&#xff0c;由 group_replication_single_primary_mode 这个系统变量指定&#xff0c;而且在所有成员上必须保持一致。ON 表示单主模式&#…...

petalinux2018.3安装步骤

1、虚拟机安装ubuntu-16.04.7-desktop-amd64.iso &#xff08;注意&#xff1a;安装ubuntu-18.04.6-desktop-amd64.iso和ubuntu-16.04.6-desktop-i386.iso会报以下错误&#xff09; environment: line 314: ((: 10 #15~1 > 10 #3: syntax error in expression (error toke…...

ubuntu22.04下使用conda安装pytorch(cpu及gpu版本)

本文介绍了conda下安装cpu、gpu版本的pytorch&#xff1b;并介绍了如何设置镜像源 ubuntu环境安装pytorch的CPU版本与GPU版本 系统&#xff1a;ubuntu22.04 显卡&#xff1a;RTX 3050 依赖工具&#xff1a;miniconda 确认环境 lsb_release -a No LSB modules are available.…...

突破编程_C++_高级教程(模板编程的基础知识)

1 模板编程的基本概念 C 的模板编程是一种编程技术&#xff0c;它允许程序员编写处理不同类型数据的通用代码。通过使用模板&#xff0c;可以创建与特定数据类型无关的函数或类&#xff0c;这些函数或类在编译时可以根据需要生成特定数据类型的版本。这增加了代码的复用性、灵…...

胆小勿入!AI创作恐怖电影宣传片《生化危机:重生》

胆小勿入&#xff01;AI创作恐怖电影宣传片《生化危机&#xff1a;重生》 "The city is falling, and the dead walk among us." "In the shadow of the apocalypse, the fight for survival begins." "The streets are silent, but the nightmare …...

从‘生日悖论’到‘碰撞攻击’:一个故事讲明白哈希函数为什么会被攻破

从生日派对到数字指纹&#xff1a;哈希函数的安全冒险之旅 想象一下&#xff0c;你正在参加一个23人的小型生日派对。服务员突然打赌说&#xff1a;"这里至少有两个人同一天生日。"你环顾四周觉得概率渺茫——毕竟一年有365天呢。但惊人的是&#xff0c;这个赌注的胜…...

神经网络实战之dsp实现神经网络vad-1

vad神经网络有很多不同的实现&#xff0c;这里的神经网络是基于pytorch实现的&#xff0c;网络结构如下&#xff1a; class MiniVAD(nn.Module):def __init__(self, n_fft512):super().__init__()self.input48 #输入B T 48# 融合层self.fusion nn.Sequential(nn.Linear(self.i…...

2026电商客服外包TOP5实力品牌详细解读

进入2026年&#xff0c;电商行业已从粗放式扩张转向精细化运营时代&#xff0c;客户服务不再局限于简单的问答回复&#xff0c;而是成为驱动店铺销售增长、积累品牌声誉的关键要素。根据最新行业研究报告&#xff0c;专业的外包客服团队能够帮助店铺将询单转化率提高20%-30%&am…...

实测对比:openEuler三大桌面环境UKUI/DDE/XFCE安装体验与性能消耗

实测对比&#xff1a;openEuler三大桌面环境UKUI/DDE/XFCE安装体验与性能消耗 当技术决策者面对openEuler操作系统时&#xff0c;桌面环境的选择往往成为影响工作效率的关键因素。本文将基于openEuler 24.03 LTS环境&#xff0c;深度实测UKUI、DDE和XFCE三大主流桌面环境&…...

低成本搭建OpenClaw智能体:星图Qwen3-VL:30B镜像+飞书实战

低成本搭建OpenClaw智能体&#xff1a;星图Qwen3-VL:30B镜像飞书实战 1. 为什么选择本地部署OpenClaw 去年夏天&#xff0c;我接手了一个内容运营的兼职项目&#xff0c;需要每天从几十个信息源收集素材、整理成报告。最初尝试用ChatGPT Plus的API自动化处理&#xff0c;但两…...

用2万小时人类视频预训练机器人,一场豪赌还是必经之路?

先说结论核心验证了“人类数据缩放定律”&#xff1a;在灵巧操作任务上&#xff0c;模型性能随人类预训练数据量对数线性增长&#xff0c;为数据策略提供了可预测的依据。成功的关键在于“两阶段迁移”设计&#xff1a;用大规模、廉价但“嘈杂”的人类数据奠基通用结构&#xf…...

百度后端开发(Java)面试题精选:10道高频考题+答案解析

百度简介 百度是中国领先的互联网公司,以搜索引擎起家,现已发展成为涵盖人工智能、云计算、自动驾驶等多个领域的科技巨头。百度技术栈以Java为主,Spring生态为核心,在分布式系统、大数据处理、AI工程化方面有深厚积累。面试风格注重基础原理与工程实践结合,常考JVM调优、…...

单片机Shell开发避坑指南:从Putty特殊字符处理到内存安全的7个实战经验

单片机Shell开发避坑指南&#xff1a;从Putty特殊字符处理到内存安全的7个实战经验 当你在深夜调试单片机Shell时&#xff0c;突然发现退格键会导致整个系统崩溃&#xff0c;或者用户输入超长字符串后设备莫名其妙重启——这些看似简单的交互问题&#xff0c;往往成为项目交付前…...

Python+Spire.Doc实战:5分钟搞定Word邮件合并批量生成邀请函(附完整代码)

PythonSpire.Doc实战&#xff1a;5分钟搞定Word邮件合并批量生成邀请函&#xff08;附完整代码&#xff09; 行政和市场人员经常面临批量发送个性化邀请函的挑战。传统手动修改不仅耗时费力&#xff0c;还容易出错。今天我们将用Python和Spire.Doc库&#xff0c;实现高效精准的…...

如何在MATLAB中免费实现亚像素级变形测量:Ncorr 2D完整指南 [特殊字符]

如何在MATLAB中免费实现亚像素级变形测量&#xff1a;Ncorr 2D完整指南 &#x1f680; 【免费下载链接】ncorr_2D_matlab 2D Digital Image Correlation Matlab Software 项目地址: https://gitcode.com/gh_mirrors/nc/ncorr_2D_matlab 你是否曾为材料变形测量而烦恼&am…...