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

【MySQL】数据库基础(表的操作)

目录

一、创建表

二、查看表结构

三、修改表

3.1 添加新列 

3.2 修改列属性

3.3 删除列属性

3.4 修改表名

3.5 向表中插入

3.6 修改列名

四、删除表


一、创建表

语法:

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

 说明:

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

示例:

mysql> create table users(-> id int,-> name varchar(20) comment '用户名',-> password char(32) comment '用户密码,最多为32位',-> birthday date comment '生日'-> );

如果不设置字符集 、校验规则、存储引擎,系统会使用默认的选项。

可以看到Linux目录下有库对应的目录和表对应的文件。 

 

二、查看表结构

desc 表名;

示例:

 

  • Field: 字段的名称。
  • Type: 字段的MySQL数据类型。
  • Null: 这个字段是否可以为NULL。YES表示可以为NULL,NO表示不能为NULL。
  • Key: 表示这个字段是否是索引的一部分。
    PRI表示这个字段是主键,
    UNI表示这个字段是唯一索引的一部分,
    MUL表示这个字段是多列索引的一部分。
  • Default: 表示这个字段的默认值。
    如果这个字段可以有默认值,并且默认值是字符串类型,那么默认值会以单引号包围。
  • Extra: 这个字段包含了一些额外的信息,如是否为自动增长(auto_increment)、是否为非空(not_null)等。Extra字段为空,这意味着没有额外的信息。

三、修改表

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

3.1 添加新列 

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

圆括号()可以加也可以不加,方括号[ ]不用加。

示例:添加名为电话号码的新列 

 

可以在选项中使用 [after 列名] 指定在那一列后面。

3.2 修改列属性

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

将users表中的name列的数据类型从VARCHAR(20)更改为VARCHAR(50),可以使用以下命令:ALTER TABLE users MODIFY name VARCHAR(50);

3.3 删除列属性

ALTER TABLE tablename DROP (column);

删除字段一定要小心,因为删除字段及其对应的列数据都没了。

3.4 修改表名

alter table 旧表名 rename to 新表名;

to 可省略,例如:alter table users rename employee;

3.5 向表中插入

insert into 表名 values(值1, 值2, 值3, ...);
insert into 表名 (列1, 列2, 列3, ...) values(值1, 值2, 值3, ...);
  •  方法1需要提供表中所有列的值,并且这些值必须与表中的列顺序和数据类型相匹配。
  • 方法2允许指定哪些列应该被插入,并且只提供这些列的值。如果不提供某个列的值,MySQL将自动为该列分配默认值(如果存在的话)。

3.6 修改列名

alter table 表名 change 旧列名 新列名 列属性;

需要对新列名再次设置属性。 

四、删除表

语法格式:

DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ...;
  • 使用TEMPORARY时,它告诉MySQL删除一个临时表
  • IF EXISTS是一个可选的子句,如果使用它,当指定的表不存在时,MySQL将不会抛出错误。

示例:

drop table t1;

在MySQL中,DROP TABLE语句用于删除表。这个操作是不可逆的,一旦执行,表及其所有数据和结构都会被永久删除。在执行删除操作之前,要确保用户有足够的权限,并且已经备份了相关数据。


http://www.mrgr.cn/news/6389.html

相关文章:

  • 计算机基础知识复习8.23
  • 通过sql修改pg数据库的表结构
  • TCP的报文段结构与TCP编程的小工具
  • 【数学建模】趣味数模问题——舰艇追击问题
  • 国内热门项目管理软件盘点
  • Windows自动化3️⃣WindowsPC拽起时长问题解决方案
  • 框架——MyBatis查询(单表查询,多表联查)
  • PS 笔记
  • 证书学习(一)keytool 工具使用介绍
  • halcon(二)控制语句
  • Unity动画模块 之 Animator中一些常见参数
  • Windows RPC 运行时中的严重远程代码执行漏洞
  • 计算机毕业设计选题推荐-猫眼电影数据可视化分析-Python爬虫-k-means算法
  • 【面试题系列Vue04】Vue.js中 $nextTick 原理及作用
  • 基于x86 平台opencv的图像采集和seetaface6的口罩人脸检测识别功能
  • html+css+js网页制作 电商小米商城7个页面
  • javascript利用三元运算符制作补零程序
  • spring声明式事务@Transactional注解继承问题
  • 使用pyevtk导出结构化VTK网格以供后处理
  • 每日一问:深入探讨TCP与UDP的区别