首页 > 数据库 >MySQL表的操作

MySQL表的操作

时间:2024-07-02 17:31:37浏览次数:3  
标签:users MySQL 修改 表名 table 操作 alter 字段名

文章目录


img

MySQL表的操作

1、创建表

语法:[]内容可省略

create table 表名(
	列名1 列类型1 [not null] [default 默认值] [primary key],	
	列名2 列类型2,	
	...
) [字符集] [校验规则] [存储引擎];

说明:

  • [not null] :该列不能为空

  • [default 默认值]:该列设置了默认值(没写就自动填默认值)

  • [primary key]:该列设置为主键

  • 字符集名和校验规则名,在前面的博客MySQL库的操作有讲过,不再赘述。

  • [字符集]:character set 字符集名

  • [校验规则]:collate 校验规则名

  • [存储引擎]:engine 存储引擎名


2、创建表案例

创建表之前,得先进入到当前数据库中,使用use 数据库名;进入到该数据库,然后在该数据库中建表:

use test1; -- 进入该数据库
create table users(
   id int,
   name varchar(20),
   password varchar(18)
   ) character set utf8 engine MyISAM;

说明:

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

  • 这里users的表结构如下:

  • 再创建一个默认的存储引擎为InnoDB的表test,该test的表结构如下:

  • 可以看到不同的存储引擎创建表的文件不一样,且文件大小相差很大。

3、查看表结构

desc 表名;

第一行从左往右分别是字段名(列名)、字段类型、是否可以为空、是否是主键、默认值、扩充。


4、修改表

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

4.1、修改表结构

alter table 表名 modify (字段名 字段类型 [not null] [default 默认值] [primary key], 字段名...);

案例:

  • 先在users表中插入两条数据(后面博客会详细讲解插入语法):
insert into users values(1,'张三','1234'),(2,'李四','3456');
  • 查看插入后的表内容(后面博客会详细讲解select语法):
select * from users;

  • 修改password,让其长度改为100:
alter table users modify password varchar(100);


4.2、表中添加字段

添加字段:

alter table 表名 add (字段名 字段类型 [not null] [default 默认值] [primary key], 字段名...);

在users表中增加一个字段path,用来保存图片路径:

alter table users add path varchar(50) after password;

这里我们使用了关键字after 字段名,用来插入到该字段名后面。并且新增字段对原来数据没有影响。

新增字段后,表结构也新增了一行。

(这里password长度重新设置成了18)。


4.3、表中删除字段

删除字段:

alter table 表名 drop (字段名);

删除password字段:

alter table users drop password;

注意:删除该字段,该字段的数据将被全部删除,涉及到删除的动作,需要特别注意!


4.4、修改表名

修改表名:

alter table users rename [to] 新表名;

users修改表名为student:

alter table users rename student;


4.5、修改字段名

修改字段名:

alter table 表名 change 字段名 新字段名 字段类型 [not null] [default 默认值] [primary key]; --新字段需要完整定义

我们可以观察到:修改表结构、添加字段和修改字段名,操作和创建表的操作是基本一样的!

修改name字段为xingming:

alter table student change name xingming varchar(22);


5、删除表

语法:

drop [tempoary] table [if exists] 表1,表2...;


OKOK,MySQL表的操作就到这里,如果你对Linux和C++也感兴趣的话,可以看看我的主页哦。下面是我的github主页,里面记录了我的学习代码和leetcode的一些题的题解,有兴趣的可以看看。

Xpccccc的github主页

标签:users,MySQL,修改,表名,table,操作,alter,字段名
From: https://blog.csdn.net/qq_44121078/article/details/140124510

相关文章

  • Navicat for MySQL 11软件下载及安装教程
    ​根据行业数据显示数据库备份和恢复:Navicat提供了备份和恢复数据库的功能,使用者能够创建定期的数据库备份,并在需要时恢复数据,这有助于保护数据免受意外删除、损坏或灾难性事件的影响。也就是说数据导入和导出:Navicat提供了灵活的数据导入和导出功能,能够从不同的数据源导入数据......
  • mysql mgr cluster关闭ssl,使抓包可以抓到实际的数据
    默认加密设置#1.MySQL服务器是否以--ssl选项启动,YES表示当前服务器支持SSL加密mysql>showvariableslike'have_ssl';+---------------+-------+|Variable_name|Value|+---------------+-------+|have_ssl|YES|+---------------+-------+1rowinset(0.00se......
  • 医院挂号系统:基于JSP和MySQL的现代化医疗预约平台
    开头语:您好,我是专注于医疗系统开发的IT学长。如果您对医院挂号系统感兴趣,欢迎联系我。开发语言:Java数据库:MySQL技术:JSP技术,B/S架构工具:Eclipse,MyEclipse系统展示首页管理员功能模块医生功能模块用户前后台功能模块摘要随着互联网技术的飞速发展,医院挂号系......
  • NWIFI.SYS 的底层原理主要围绕着操作系统驱动程序模型的实现,确保无线网络适配器与操作
    NWIFI.SYS是一个Windows操作系统中的驱动程序文件,其底层原理涉及操作系统与硬件之间的交互和数据处理。以下是其底层原理的一些关键点:驱动程序功能:NWIFI.SYS主要负责管理和控制无线网络适配器。它通过操作系统提供的驱动程序接口(DriverInterface)与硬件通信,执行一系列操作,......
  • MySQL 代理层:ProxySQL
    文章目录说明安装部署1.1yum安装1.2启停管理1.3查询版本1.4Admin管理接口入门体验功能介绍3.1多层次配置系统读写分离将实例接入到代理服务定义主机组之间的复制关系配置路由规则事务读的配置延迟阈值和请求转发ProxySQL核心表mysql_usersmysql_serversmysql_......
  • 在多线程并发操作中处理大量文件时,以下是一些关键的底层原理和技术:
    在多线程并发操作中处理大量文件时,以下是一些关键的底层原理和技术:1.文件句柄管理每个线程需要独立地管理文件句柄,文件句柄是操作系统提供的用于标识和访问文件的资源。在Windows环境下,使用CreateFile函数可以打开文件并获得文件句柄。每个文件句柄具有其自己的上下文和状态,......
  • 在Windows操作系统中,与文件系统进行交互主要通过一系列的API函数来实现,这些函数包括底
    操作文件系统API与操作系统的文件系统进行交互,涉及到底层的文件系统操作和文件属性管理。不同的操作系统提供了不同的API和机制来执行这些操作,但基本的原理和流程大致相似。文件系统API的基本操作1.文件时间戳(创建时间、修改时间、访问时间)创建时间(CreationTime):表示文件被创......
  • WinNTSetup 使用教程 进行 Windows 操作系统的安装和配置; WinNTSetup 进行高级操作和
    WinNTSetupv5.3.5.2-InstallWindowsfromUSB-MSFNMyFiles(mediafire.com)WinNTSetup是一个强大的Windows安装工具,主要用于在Windows操作系统中安装或重新安装Windows。以下是一个初级使用教程的大纲,帮助您了解如何使用WinNTSetup进行操作系统的安装和配置:1.准备......
  • SpringBoot3连接Mysql数据库
    pom引入包,启动器<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.o......
  • 开发一套java语言的智能导诊需要什么技术?java+ springboot+ mysql+ IDEA互联网智能3D
    开发一套java语言的智能导诊需要什么技术?java+springboot+mysql+IDEA互联网智能3D导诊系统源码医院导诊系统是一种基于互联网和3D人体的智能化服务系统,旨在为患者提供精准、便捷的医院就诊咨询服务。该系统整合了医院的各种医疗服务资;智慧导诊解决患者盲目就诊问题,减轻分......