Mysql表的简单操作(基本技能)

2025-04-03 03:50

本文主要是介绍Mysql表的简单操作(基本技能),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

《Mysql表的简单操作(基本技能)》在数据库中,表的操作主要包括表的创建、查看、修改、删除等,了解如何操作这些表是数据库管理和开发的基本技能,本文给大家介绍Mysql表的简单操作,感兴趣的朋友一起看...

数据库中,表的操作主要包括表的创建、查看、修改、删除等。了解如何操作这些表是数据库管理和开发的基本技能。

3.1 创建表

创建表时,指定表的结构、数据类型、字符集、校验规则和存储引擎等。以下是创建表的详细语法:

语法:

create table table_name (
    field1 datatype [constraint],
    field2 datatype [constraint],
    ...
) [character set charset_name] [collate collation_name] [engine storage_engine];
  • field: 表示列名(字段名)
  • datatype: 列的数据类型(如 int、varchar、date 等)
  • cjavascriptonstraint: 可选的约束条件(如 primary key、not null、unique 等)
  • character set: 字符集(可选,如果未指定,使用数据库的默认字符集)
  • collate: 校验规则(可选,如果未指定,使用数据库的默认校验规则)
  • engine: 存储引擎(如 innodb、myisam 等)

注:括号[]里面可以省略,自定义写或者不写。

Mysql表的简单操作(基本技能)

 查看表的创建信息:

show create table user;

Mysql表的简单操作(基本技能)

其中被圈起来的就是我们没有写,默认被添加的。

示例:

create table user (
    id int primary key, 
    name varchar(20) not null comment '用户名', 
    password char(32) not null comment '密码是32位的md5值', 
    birthday date comment '生日'
) character set utf8 collate utf8_general_ci engine=myisam;

作用:

  • 创建一个名为 users 的表,包含 idnamepasswordbirthday 字段。
  • 设置字符集为 utf8,校验规则为 utf8_general_ci,存储引擎使用 myisam

说明

  • primary key:定义主键,确保该字段唯一且不为空。
  • not null:字段不能为空。
  • comment:给字段加注释,便于理解字段用途。

存储引擎说明

不同存储引擎具有不同的特性:

  • myisam:适用于读取较多的场景,存储China编程和索引分离。
  • innodb:支持事务,行级锁,外键约束,适用于高并发写操作。

 3.2 查看表结构

语法:

desc 表名;

或者

show columns from table_name;
  • table_name: 表的名称

使用规则:

  • describe: 显示表的字段信息,包括字段名、数据类型、是否允许 null 值、键的类型(如 primary keyindex 等)及其他信息。
  • show columns: 和 describe 类似,但输出格式可能略有不同。

示例:

describe user;

Mysql表的简单操作(基本技能)

3.3 修改表

1. 添加字段

语法:

alter table table_name add column column_name datatype 
[constraint] [after existing_column];

注:mysql支持分段书写指令 

  • table_name: 表的名称
  • column_name: 新增字段的名称
  • datatype: 字段的数据类型
  • constraint: 可选约束,指定列的规则,如 not nulldefault
  • existing_column: 如果指定,将字段添加到该字段之后

使用规则:

  • add column: 添加新字段时,可以指定新字段的默认值、约束条件以及字段的位China编程置(是否放在已有字段后面)。

示例:

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

作用:

users 表中添加名为 assets 的字段,用于保存图片路径,数据类型为 varchar(100),并放置在 birthday 字段后。

Mysql表的简单操作(基本技能)

2. 修改字段

语法:

alter table table_name modify column column_name datatype [constraint];
  • column_name: 要修改的字段名称
  • datatype: 新的数据类型
  • constraint: 可选约束

使用规则:

  • modify column: 修改现有字段的类型或约束条件。可以改变数据类型、长度、是否允许 null 等。
  • 修改字段时,字段位置不能更改。

示例:

alter table users modify name varchar(60) not null;

作用:

  • 修改 users 表中 name 字段的长度为 60,并设置为 not null。 

Mysql表的简单操作(基本技能)

3. 删除字段

语法:

alter table table_name drop column column_name;
  • column_name: 要删除的字段名称

使用规则:

  • drop column: 删除字段时会丢失该字段的数据,操作前请确保备份。

示例:

drop table user drop asserts;

作用:

  • 删除 user 表中的 asserts 字段。

Mysql表的简单操作(基本技能)

4.修改字段名

语法:

alter table table_name change column old_column_name new_column_name datatype [constraint];
  • table_name: 表的名称
  • old_column_name: 要修改的字段的原名称
  • new_column_name: 修改后的字段名称
  • datatype: 字段的数据类型(必须重新指定)
  • constraint: 可选的约束(如 not nullunique 等)

使用规则:

  • change column: 用于修改字段名称,同时可以修改字段的数据类型和约束。修改时,必须提供字段的完整数据类型,即使只是修改名称,也需要指定数据类型。
  • 注意:在修改字段名时,不能省略数据类型和原字段名称。

示例:

alter table users change column name xingming varchar(60) not null;

作用:

  • users 表中的 name 字段重命名为 xingming,并将数据类型修改为 varchar(60),且字段不能为空(not null)。

Mysql表的简单操作(基本技能)

5. 修改表名

语法:

alter table old_table_name rename to new_table_name;
  • old_table_name: 原表名
  • new_table_name: 新表名

使用规则:

  • rename to: 修改表名时,要保证新名称没有与现有表重名。

Mysql表的简单操作(基本技能)

6.删除表 

drop table [表名];

3.4 实践案例:修改表

假设我们有一个 users 表,包含以下字段:idnamepasswordbirthday

1. 插入数据

insert into users (id, name, password, birthday) 
values (1, 'a', '编程b', '1982-01-04'),
       (2, 'b', 'c', '1984-01-04');

2. 查看表结构

describe users;

3. 添加字段:添加 assets 字段,保存图片路径:

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

4. 修改字段:修改 name 字段的长度:

alter table users modify name varchar(60);

5. 删除字段:删除 password 字段:

alter table users drop password;

6. 修改表名:将表名 users 改为 employee

alter table users rename to employee;

7. 最终查看表结构

describe employee;

注: 

  • 创建表:创建表时,确保字段类型、约束条件、字符集和存储引擎的选择合适。
  • 修改表:通过 alter table 命令,可以添加、删除、修改字段,甚至修改表名。
  • 删除表:使用 drop table 命令删除表,操作时要格外小心。

注意:所有的修改表php结构的操作都会影响数据完整性,因此在进行这些操作时,务必先做好备份。

到此这篇关于Mysql表的简单操作的文章就介绍到这了,更多相关Mysql表内容请搜索China编程(www.chinasem.cn)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程China编程(www.chinasem.cn)!

这篇关于Mysql表的简单操作(基本技能)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1154063

相关文章

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java实现在Word文档中添加文本水印和图片水印的操作指南

《Java实现在Word文档中添加文本水印和图片水印的操作指南》在当今数字时代,文档的自动化处理与安全防护变得尤为重要,无论是为了保护版权、推广品牌,还是为了在文档中加入特定的标识,为Word文档添加... 目录引言Spire.Doc for Java:高效Word文档处理的利器代码实战:使用Java为Wo

MySQL中On duplicate key update的实现示例

《MySQL中Onduplicatekeyupdate的实现示例》ONDUPLICATEKEYUPDATE是一种MySQL的语法,它在插入新数据时,如果遇到唯一键冲突,则会执行更新操作,而不是抛... 目录1/ ON DUPLICATE KEY UPDATE的简介2/ ON DUPLICATE KEY UP

MySQL分库分表的实践示例

《MySQL分库分表的实践示例》MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备... 目录一、分库分表的触发条件1.1 数据量阈值1.2 并发压力二、分库分表的核心技术模块2.1 水平分

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

sysmain服务可以禁用吗? 电脑sysmain服务关闭后的影响与操作指南

《sysmain服务可以禁用吗?电脑sysmain服务关闭后的影响与操作指南》在Windows系统中,SysMain服务(原名Superfetch)作为一个旨在提升系统性能的关键组件,一直备受用户关... 在使用 Windows 系统时,有时候真有点像在「开盲盒」。全新安装系统后的「默认设置」,往往并不尽编

Python自动化处理PDF文档的操作完整指南

《Python自动化处理PDF文档的操作完整指南》在办公自动化中,PDF文档处理是一项常见需求,本文将介绍如何使用Python实现PDF文档的自动化处理,感兴趣的小伙伴可以跟随小编一起学习一下... 目录使用pymupdf读写PDF文件基本概念安装pymupdf提取文本内容提取图像添加水印使用pdfplum

Python 基于http.server模块实现简单http服务的代码举例

《Python基于http.server模块实现简单http服务的代码举例》Pythonhttp.server模块通过继承BaseHTTPRequestHandler处理HTTP请求,使用Threa... 目录测试环境代码实现相关介绍模块简介类及相关函数简介参考链接测试环境win11专业版python

Python从Word文档中提取图片并生成PPT的操作代码

《Python从Word文档中提取图片并生成PPT的操作代码》在日常办公场景中,我们经常需要从Word文档中提取图片,并将这些图片整理到PowerPoint幻灯片中,手动完成这一任务既耗时又容易出错,... 目录引言背景与需求解决方案概述代码解析代码核心逻辑说明总结引言在日常办公场景中,我们经常需要从 W

使用shardingsphere实现mysql数据库分片方式

《使用shardingsphere实现mysql数据库分片方式》本文介绍如何使用ShardingSphere-JDBC在SpringBoot中实现MySQL水平分库,涵盖分片策略、路由算法及零侵入配置... 目录一、ShardingSphere 简介1.1 对比1.2 核心概念1.3 Sharding-Sp