【MySQL】数据库--表操作

目录

一、创建表

二、查看表

三、修改表

[1. 添加字段--add](#1. 添加字段--add)

[2.修改表名--rename to](#2.修改表名--rename to)

3.修改列名--change

4.修改字段的数据类型--modify

5.删除字段(列)--drop

四、删除表


一、创建表

sql 复制代码
create [temporary]table[if not exists]table_name
[([column definition],...|[index definition])]
[table option][select statement];
charset set 字符集 collate 校验规则 engine 存储引擎 ;
  1. table_name:表名
  2. if not exists:
  3. character set 字符集,如不指定则为所在数据库字符集
  4. collate 校对规则,如不指定则为所在数据库校对规则
  5. engine 存储引擎
  6. field:指定列名
  7. datatype:指定列类型(字段类型)
sql 复制代码
CREATE TABLE IF NOT EXISTS temp01
( 
studentno char(11) not null comment '学生学号',
sname char(8) not null comment '学生姓名',
sex enum ('男','女') default '男' comment '学生性别',
phone varchar(12) not null comment '学生电话',
primary key (studentno)
);
  1. 字段名:studentno
  2. 字段类型的选择:sex enum(男',女")表示 sex 字段的类型是 enum,取值范围为'男和"女'。对于取值固定的字段可以设置数据类型为enum。
  3. 默认值的设置:default男'表示默认值为"男"
  4. 设置精度:float(4,1)表示精度为4,小数位数为1位
  5. 如果没有指定是 null 或是 not null,则列在创建时假设为null。
  6. 添加注释:comment '学生学号' 表示对studentno字段增加注释 "学生学号"
  7. 主键设置:primary key 表示设置字段为主键

二、查看表

1.查看已经创建的表有哪些:

sql 复制代码
show tables;

2.具体表的基本结构:

sql 复制代码
describe 表名;

3.查看表详细结构:

sql 复制代码
show create table 表名;

三、修改表

语法:alter table 表名;

1. 添加字段--add

sql 复制代码
alter table temp01
add entrance int(3) null comment '入学成绩' after sex;
#在temp01 表的sex列后添加一列 entrance

2.修改表名--rename to

sql 复制代码
alter table 旧表名 rename to 新表名;

3.修改列名--change

sql 复制代码
alter table 表名
change 旧字段名 新字段名类型(大小) 是否为空...... ;

4.修改字段的数据类型--modify

sql 复制代码
alter table 表名
modify 字段名 类型(大小) 是否为空...... ;

5.删除字段(列)--drop

sql 复制代码
alter table 表名 drop 字段名(列);

四、删除表

sql 复制代码
drop table 表名;
相关推荐
GDAL31 分钟前
Node.js v22.5+ 官方 SQLite 模块全解析:从入门到实战
数据库·sqlite·node.js
DCTANT1 小时前
【原创】国产化适配-全量迁移MySQL数据到OpenGauss数据库
java·数据库·spring boot·mysql·opengauss
程序员岳焱3 小时前
Java 与 MySQL 性能优化:MySQL全文检索查询优化实践
后端·mysql·性能优化
喜欢敲代码的程序员4 小时前
SpringBoot+Mybatis+MySQL+Vue+ElementUI前后端分离版:项目搭建(一)
spring boot·mysql·elementui·vue·mybatis
AI、少年郎4 小时前
Oracle 进阶语法实战:从多维分析到数据清洗的深度应用(第四课)
数据库·oracle
赤橙红的黄4 小时前
自定义线程池-实现任务0丢失的处理策略
数据库·spring
钢铁男儿4 小时前
C# 委托(调用带引用参数的委托)
java·mysql·c#
叁沐4 小时前
MySQL 02 日志系统:一条SQL更新语句是如何执行的?
mysql
DataGear4 小时前
如何在DataGear 5.4.1 中快速制作SQL服务端分页的数据表格看板
javascript·数据库·sql·信息可视化·数据分析·echarts·数据可视化
weixin_438335404 小时前
分布式锁实现方式:基于Redis的分布式锁实现(Spring Boot + Redis)
数据库·redis·分布式