【MySQL学习笔记】(三)操作表(结构)

news2024/11/15 17:42:00

  • 1 创建表
  • 2 查看表结构
  • 3 修改表
  • 4 删除表

注:本篇文章操作的是表的结构,并不是表的内容。
属于笔记(一)中的SQL分类中的DDL

1 创建表

语法:

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

说明:
field 表示列名
datatype 表示列的类型
character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准
collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

案例

create table user(
id int,
name varchar(20) comment '用户名',
password char(32) comment '密码是32位的md5值',
birthday date comment '生日'
) character set utf8 engine MyISAM;

不同的存储引擎,创建表的文件不一样。

users 表存储引擎是 MyISAM ,在数据目中有三个不同的文件,分别是:
在这里插入图片描述
如果创建表采用innodb引擎存储,那么会产生这两个文件
在这里插入图片描述

2 查看表结构

desc 表名;

在这里插入图片描述

注:在查看表之前需要先use对应存放该表的数据库

扩充:
查看当前数据库有几张表:
show tables
查看创建表的时候的对应语句
show create table 表格名;

3 修改表

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

案例:

在表中新增添加两条记录

mysql> insert into user values('张三','123456','2000-01-01'),('李四','54321','2000-01-02');

在user中添加一个字段

mysql> alter table user add old_name varchar(12) after name;

在这里插入图片描述
插入新字段后,对表中原来的数据没有影响
在这里插入图片描述

修改name,将其长度改为60

mysql> alter table user modify name varchar(60);

在这里插入图片描述

删除password列

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

mysql> alter table user drop password;

在这里插入图片描述

修改表名为User

mysql> alter table user rename to User;

在这里插入图片描述

修改name为id

mysql> alter table User change name id varchar(60);

–新字段需要完整定义 id varchar(60)

在这里插入图片描述

4 删除表

drop table 表名;

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

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

相关文章

线程同步器:CountDownLatch、CyclicBarrier、Semaphore

CountDownLatch 日常开发中经常遇到一个线程需要等待一些线程都结束后才能继续向下运行的场景,在CountDownLatch出现之前通常使用join方法来实现,但join方法不够灵活,所以开发了CountDownLatch。场景:一个等其他多个线程&#xf…

消息中间件进阶学习

文章目录 1、RabbitMQ1.1、如何保证消息不丢失?小总结面试快速答法 1.2、消息的重复消费问题面试快速答法 1.3、死信交换机小总结面试快速答法 1.4、消息堆积怎么解决小总结面试快速答法 1.5、集群小总结面试快速答法 2、Kafka2.1、Kafka是如何保证消息不丢失小总结…

Linux中Docker详细安装说明

1.准备环境 说明:准备Linux系统centos7版本(以上) 2.切换管理模式 说明:输入一下命令,然后回车,输入密码。 su – 3.更新yum 说明:为了保证doker能够给顺利安装,那么更新一下;如果没有也可以…

单相智能电量多用户远程预付费控系统优化的设计及应用

摘要:由于现有系统仅对电表数据进行读取操作,存在成本较高和耗时较长的问题,为此对单相智能多用户远程预付费控系统优化设计进行研究。选择电能表子系统作为优化对象,选取78KO527A微控制器作为电能表子系统的控制核心,…

文献阅读:中国物理海洋学研究70 年-发展历程、学术成就概览

摘要 本文概略评述新中国成立70 年来物理海洋学各分支研究领域的发展历程和若干学术成就。中国物理海洋学研究起步于海浪、潮汐、近海环流与水团,以及以风暴潮为主的海洋气象灾害的研究。随着国力的增强,研究领域不断拓展,涌现了大量具有广泛…

Linux踢掉远程登录用户

Linux踢掉远程登录用户 安装psmisc yum install -y psmisc查看远程登录用户 who得到以下结果 [rootcentos7 ~]# w10:58:13 up 0 min, 2 users, load average: 0.12, 0.03, 0.01 USER TTY FROM LOGIN IDLE JCPU PCPU WHAT lhz pts/0 19…

mysql——数据库设计

前言 之前我们已经了解了 mysql 的基本增删改查mysql 从入门到放弃——基本约束以及语法 现在我们系统的进行一遍数据库的设计 直接进入主题 来个例子:下面我们将围绕这个例子来进行数据库的设计 我们就来简单的模拟 大学教务处的选课 系统 中的 选课功能 注意…

十大排序算法(Java实现)

文章目录 零、总览 / 前言一、冒泡排序1.算法描述2.代码&复杂度 二、选择排序1.算法描述2.代码&复杂度 三、插入排序1.算法描述2.代码&复杂度分析 四、希尔排序1.算法步骤2.代码&复杂度分析 五、归并排序1.算法描述2.代码&复杂度分析 六、快速排序1.算法描…

《强化学习的数学原理》思维导图,供初学者参考

对应课程: 【强化学习的数学原理】课程:从零开始到透彻理解(完结)_哔哩哔哩_bilibili

Linux 系统下 CMake 示 例

CMake 是一个开源的跨平台工具,可以构建、测试和打包软件。 它具有如下特性: 自动搜索可能需要的程序、库和头文件的能力;独立的构建目录(如build),可以安全清理;支持复杂的自定义命令&#xf…

一文了解什么什么是加密货币及其工作原理

加密货币是基于区块链技术并由密码学保护的去中心化数字货币。要理解加密货币,首先需要理解三个术语——区块链、去中心化和密码学。 一、加密货币如何运作 简而言之,加密货币中的区块链是一种数字分类账,其访问权限分布在授权用户之间。该分…

hello算法学习笔记之排序

概述:排序算法 在排序算法中,数据类型可以是整数、浮点数、字符或字符串等;顺序的判断规则可根据需求设定,如数字大小、字符 ASCII 码顺序或自定义规则。 评价维度: 运行效率、就地性、稳定性、自适应性&#xff08…

21.RocketMQ源码之NameServer的路由管理和架构设计

highlight: arduino-light NameServer 路由管理 Broker消息服务器在启动的时向所有NameServer注册。 消息生产者Producer在发送消息之前先从NameServer获取Broker服务器地址列表然后根据负载均衡算法从列表中选择一台服务器进行发送。 NameServer与每台Broker保持长连接&#x…

单频/双频gps北斗模块相关应用领域详解_SKYLAB GPS+北斗模块

以“时空数据,赋能未来”为主题的第十二届中国卫星导航年会在江西南昌正式开幕,据悉,本届年会是北斗系统开启全球化、产业化的第一届年会。2020年,北斗三号全球卫星定位系统正式服务全球,作为北斗产业链中的一员&#…

小黑厦门极限神游,通宵环岛骑行,鼓浪屿徒步赏景的leetcode之旅:剑指 Offer 48. 最长不含重复字符的子字符串

小黑代码(与官方题解思路一致&#xff0c;比其可读性更强) class Solution:def lengthOfLongestSubstring(self, s: str) -> int:# 字符串长度n len(s)# 定义双指针head 0tail 0# 中间变量&#xff0c;存放窗口中的元素set_ set()# 结果变量length 0while tail < n…

Flutter iOS 打包 问题处理

日常问题收集&#xff1a; remark: Incremental compilation has been disabled: is not currently compatible with embedding LLVM IR bitcode a. 在Build Settings中搜索Enable Bitcode-> 设置No b. Project-> Targets-> Build Settings-> Custom Compiler Flag…

银行数字化转型导师坚鹏:银行数字化运营所必须采取的五大措施

银行数字化运营已经成为提升市场竞争力和客户满意度的重要战略。以下是银行数字化运营所必须采取的五大措施&#xff1a; 1) 建立强大的数字化基础设施&#xff1a;银行需要投资建立可靠的数字化基础设施&#xff0c;以支持数字化运营的各个方面。这包括更新和升级银行的IT系统…

springboot集成openfeign

一、Feign简介 Feign是一个声明式的伪Http客户端&#xff0c;它使得写Http客户端变得更简单。使用Feign&#xff0c;只需要创建一个接口并注解。它具有可插拔的注解特性&#xff0c;可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon&…

Django - 定时任务框架【django-apscheduler】基本使用详解(二)

一. 前言 一个网页会有很多数据是不需要经常变动的&#xff0c;比如说首页&#xff0c;变动频率低而访问量大&#xff0c;我们可以把它静态化&#xff0c;这样就不需要每次有请求都要查询数据库再返回&#xff0c;可以减少服务器压力 我们可以使用Django的模板渲染功能完成页面…

【Android Framework系列】第4章 PMS原理

1 PMS简介 PMS&#xff08;PackageManagerService&#xff09;是Android提供的包管理系统服务&#xff0c;它用来管理所有的包信息&#xff0c;包括应用安装、卸载、更新以及解析AndroidManifest.xml。通过解析每个安装应用的AndroidManifest.xml&#xff0c;将xml中的数据全部…