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

<3>-MySQL表的操作

目录

一,创建表

二,查看表结构

三,修改表

四,删除表


一,创建表

语法:

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

说明:

field 表示列名

datatype 表示列的类型

character set 字符集,如果没有指定字符集,则以所在数据库的字符集为准

collate 校验规则,如果没有指定校验规则,则以所在数据库的校验规则为准

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

案例:

mysql> create table if not exists `users`(-> id int,-> name varchar(20) comment '名字',-> password varchar(20) comment '密码',-> birthday date comment '生日'-> )character set utf8 collate utf8_general_ci engine MyISAM;
Query OK, 0 rows affected (0.00 sec)[root@iZwz9eoohx59fs5a6ampomZ mysql]# tree db1
db1
├── db.opt
├── person.frm
├── person.ibd
├── users.frm
├── users.MYD
└── users.MYI

说明:

users 表存储引擎是 MyISAM ,在数据目中有三个不同的文件,分别是:

users.frm:表结构

users.MYD:表数据

users.MYI:表索引

二,查看表结构

代码:desc 表名

mysql> desc users;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(11)     | YES  |     | NULL    |       |
| name     | varchar(20) | YES  |     | NULL    |       |
| password | varchar(20) | YES  |     | NULL    |       |
| birthday | date        | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+

说明:

Field 字段名字

Type 字段类型

Null 是否允许为空

Key 索引类型

Default 默认值

Extra 扩充

三,修改表

我们要修改某个表的结构,比如字段名字,字段大小,字段类型,表的字符集类型, 表的存储引,比如添加字段,删除字段,修改字段名等等。这时要用修改表的语句。

// 添加字段
alter table users add 新列名;
// 修改字段长度
alter table users modify 新列名 新类型(长度);
// 删除字段
alter table users drop 删除列名;
// 修改字段名字
alter table users change 原列名 新列名 新类型(长度);
// 修改表名字
alter table 原表名 rename 新表名;

在users表,添加一个字段image

mysql> alter table users add image varchar(128) after birthday;
Query OK, 3 rows affected (0.00 sec)
Records: 3  Duplicates: 0  Warnings: 0mysql> desc users;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int(11)      | YES  |     | NULL    |       |
| name     | varchar(20)  | YES  |     | NULL    |       |
| password | varchar(20)  | YES  |     | NULL    |       |
| birthday | date         | YES  |     | NULL    |       |
| image    | varchar(128) | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+

在users表,修改password字段长度为32

mysql> alter table users modify password varchar(32);
Query OK, 3 rows affected (0.01 sec)
Records: 3  Duplicates: 0  Warnings: 0mysql> desc users;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| id       | int(11)      | YES  |     | NULL    |       |
| name     | varchar(20)  | YES  |     | NULL    |       |
| password | varchar(32)  | YES  |     | NULL    |       |
| birthday | date         | YES  |     | NULL    |       |
| image    | varchar(128) | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+

在users表,删除id列

mysql> alter table users drop id;
Query OK, 3 rows affected (0.00 sec)
Records: 3  Duplicates: 0  Warnings: 0mysql> desc users;
+----------+--------------+------+-----+---------+-------+
| Field    | Type         | Null | Key | Default | Extra |
+----------+--------------+------+-----+---------+-------+
| name     | varchar(20)  | YES  |     | NULL    |       |
| password | varchar(32)  | YES  |     | NULL    |       |
| birthday | date         | YES  |     | NULL    |       |
| image    | varchar(128) | YES  |     | NULL    |       |
+----------+--------------+------+-----+---------+-------+

把image列名,修改为path

mysql> alter table users change image path varchar(64);
Query OK, 3 rows affected (0.00 sec)
Records: 3  Duplicates: 0  Warnings: 0mysql> select * from users;
+--------+----------+------------+------+
| name   | password | birthday   | path |
+--------+----------+------------+------+
| 张三   | 4321     | 2000-11-23 | NULL |
| 张三   | 4321     | 2000-11-23 | NULL |
| 李四   | 5678     | 1987-06-05 | NULL |
+--------+----------+------------+------+

把users表名,修改为user_set

mysql> alter table users rename user_set;
Query OK, 0 rows affected (0.00 sec)mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| person        |
| user_set      |
+---------------+

四,删除表

代码:drop table 表名;

mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| person        |
| user_set      |
+---------------+
2 rows in set (0.00 sec)mysql> drop table user_set;
Query OK, 0 rows affected (0.00 sec)mysql> show tables;
+---------------+
| Tables_in_db1 |
+---------------+
| person        |
+---------------+
1 row in set (0.00 sec)

相关文章:

  • unity ngui button按钮点击时部分区域响应,部分区域不响应
  • unity实现自定义粒子系统
  • 【无人机】地面站crazyfile-cfclient免安装方法,Python3.10的整体环境配置打包
  • 支付系统架构图
  • 【设计模式】1.简单工厂、工厂、抽象工厂模式
  • jmeter聚合报告中参数详解
  • 重新定义 AI 协同:三款开源 MCP 工具开启智能体从“聊天”到“操控”
  • Bootstrap Table开源的企业级数据表格集成
  • LLMs 系列科普文(12)
  • 七、Sqoop Job:简化与自动化数据迁移任务及免密执行
  • [深度学习]搭建开发平台及Tensor基础
  • AI书签管理工具开发全记录(十七):Sun-Panel书签同步实现
  • Spring Boot微服务架构(十四):传统架构与微服务架构的开发成本对比分析
  • 【资源分享】手机玩转经典游戏!小鸡模拟器1.9.0:PSP/NDS/GBA完美运行!
  • ⑤Pybullet之URDF文件说明及示例
  • MCP Tool模块详解
  • 【工具教程】多个条形码识别用条码内容对图片重命名,批量PDF条形码识别后用条码内容批量改名,使用教程及注意事项
  • 数据结构与算法——二叉树高频题目(2)
  • 为什么已经有 Nginx 了,还需要服务网关?
  • 2025年中国建银投资笔试测评春招校招社招笔试入职测评行测题型解读揭秘
  • 加工厂网站建设/信息流广告的特点
  • 兰州网站建设q.479185700棒/自动发帖软件
  • 医院网站建设的指导思想/seo技术蜘蛛屯
  • 怎么介绍vue做的购物网站项目/百度400电话
  • 2017网站发展趋势/营销软文代写
  • 有那些网站做结伴旅游的/网站搜索引擎优化主要方法