MySQL----MySQL中数据表的常用操作命令

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: MySQL----MySQL中数据表的常用操作命令

【原文链接】

1、数据表的常见操作命令

  • 查看当前数据库中所有数据表
show tables

如:

mysql> use blog_redrose2100;
Database changed
mysql> show tables;
+----------------------------+
| Tables_in_blog_redrose2100 |
+----------------------------+
| articles                   |
| comment                    |
| credit                     |
| favorite                   |
| users                      |
+----------------------------+
5 rows in set (0.00 sec)

mysql>
  • 创建数据表
create table 数据表名字 (字段 类型 约束,字段2 类型2 约束2, ...)

如下为创建一个简单的表

mysql> create table demo(id int,name varchar(30));
Query OK, 0 rows affected (0.04 sec)

mysql> show tables;
+----------------------------+
| Tables_in_blog_redrose2100 |
+----------------------------+
| articles                   |
| comment                    |
| credit                     |
| demo                       |
| favorite                   |
| users                      |
+----------------------------+
6 rows in set (0.00 sec)

mysql>

如下为创建一个带约束的表

mysql> create table demo2(id int primary key auto_increment not null, name varchar(30) not null);
Query OK, 0 rows affected (0.04 sec)

mysql> show tables;
+----------------------------+
| Tables_in_blog_redrose2100 |
+----------------------------+
| articles                   |
| comment                    |
| credit                     |
| demo                       |
| demo2                      |
| favorite                   |
| users                      |
+----------------------------+
7 rows in set (0.00 sec)

mysql>
  • 查看数据表的结构
desc 数据表名;

如:

mysql> desc demo;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(30) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql>
  • 查看创建数据表的语句
show create table 数据表名;

如:

mysql> show create table demo2;
+-------+---------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                                                                                                            |
+-------+---------------------------------------------------------------------------------------------------------------------------------------------------------+
| demo2 | CREATE TABLE `demo2` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` varchar(30) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |
+-------+---------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

mysql>
  • 为表增加一个字段
alter table  表名  add 列名 类型;

如,给demo表增加一个密码的列

mysql> alter table demo add password varchar(16);
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc demo;
+----------+-------------+------+-----+---------+-------+
| Field    | Type        | Null | Key | Default | Extra |
+----------+-------------+------+-----+---------+-------+
| id       | int(11)     | YES  |     | NULL    |       |
| name     | varchar(30) | YES  |     | NULL    |       |
| password | varchar(16) | YES  |     | NULL    |       |
+----------+-------------+------+-----+---------+-------+
3 rows in set (0.00 sec)

mysql>
  • 修改已有的列
alter table 表名 modify 列名 类型及约束;

如给demo表中的password增加非空约束,并设置默认值admin123

mysql> alter table demo modify password varchar(16) not null default 'admin123';
Query OK, 0 rows affected (0.04 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc demo;
+----------+-------------+------+-----+----------+-------+
| Field    | Type        | Null | Key | Default  | Extra |
+----------+-------------+------+-----+----------+-------+
| id       | int(11)     | YES  |     | NULL     |       |
| name     | varchar(30) | YES  |     | NULL     |       |
| password | varchar(16) | NO   |     | admin123 |       |
+----------+-------------+------+-----+----------+-------+
3 rows in set (0.00 sec)

mysql>
  • 删除已有的列
alter table 数据表名 drop 列名

如删除demo数据表中的password列

mysql> alter table demo drop password;
Query OK, 0 rows affected (0.05 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> desc demo;
+-------+-------------+------+-----+---------+-------+
| Field | Type        | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+-------+
| id    | int(11)     | YES  |     | NULL    |       |
| name  | varchar(30) | YES  |     | NULL    |       |
+-------+-------------+------+-----+---------+-------+
2 rows in set (0.00 sec)

mysql>
  • 删除数据表
drop table  数据表名

如删除demo2数据表

mysql> drop table demo2;
Query OK, 0 rows affected (0.02 sec)

mysql> show tables;
+----------------------------+
| Tables_in_blog_redrose2100 |
+----------------------------+
| articles                   |
| comment                    |
| credit                     |
| demo                       |
| favorite                   |
| users                      |
+----------------------------+
6 rows in set (0.00 sec)

mysql>
相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
7月前
|
关系型数据库 MySQL 索引
MySQL数据表添加字段的三种方式
MySQL数据表添加字段的三种方式
5980 0
|
5月前
|
存储 关系型数据库 MySQL
初步了解MySQL数据库的基本命令
初步了解MySQL数据库的基本命令
50 0
|
1月前
|
SQL 存储 关系型数据库
MySQL进阶突击系列(01)一条简单SQL搞懂MySQL架构原理 | 含实用命令参数集
本文从MySQL的架构原理出发,详细介绍其SQL查询的全过程,涵盖客户端发起SQL查询、服务端SQL接口、解析器、优化器、存储引擎及日志数据等内容。同时提供了MySQL常用的管理命令参数集,帮助读者深入了解MySQL的技术细节和优化方法。
|
5月前
|
存储 SQL 关系型数据库
MySQL 给数据表增加一列,一定会锁表吗?
【8月更文挑战第8天】在数据库管理和开发中,给数据表增加一列是一个常见的操作。然而,当面试官提出“MySQL 给数据表增加一列,一定会锁表吗?”这一问题时,答案并非绝对。这主要取决于MySQL的版本、存储引擎以及具体的操作方式。
429 0
|
3月前
|
tengine 关系型数据库 MySQL
Tengine、Nginx安装MySQL数据库命令教程
本指南详细介绍了在Linux系统上安装与配置MySQL数据库的步骤。首先通过下载并安装MySQL社区版本,接着启动MySQL服务,使用`systemctl start mysqld.service`命令。若启动失败,可尝试使用`sudo /etc/init.d/mysqld start`。利用`systemctl status mysqld.service`检查MySQL的服务状态,确保其处于运行中。通过日志文件获取初始密码,使用该密码登录数据库,并按要求更改初始密码以增强安全性。随后创建一个名为`tengine`的数据库,最后验证数据库创建是否成功以及完成整个设置流程。
|
3月前
|
监控 关系型数据库 MySQL
MySQL数据表索引命名规范
MySQL数据表索引命名规范
132 1
|
4月前
|
存储 关系型数据库 MySQL
MySQL基础命令及使用示例
这些基础命令构成了与MySQL数据库交互的核心,理解并掌握它们对于进行有效的数据库操作至关重要。在实际使用中,建议结合实际案例和需求来练习这些命令,以加深理解和提高效率。
46 3
|
4月前
|
存储 关系型数据库 MySQL
MySQL基础命令及使用示例
这些基础命令构成了与MySQL数据库交互的核心,理解并掌握它们对于进行有效的数据库操作至关重要。在实际使用中,建议结合实际案例和需求来练习这些命令,以加深理解和提高效率。
88 4
|
3月前
|
关系型数据库 MySQL 数据库
Mysql 常用命令
Mysql 常用命令
32 0
|
3月前
|
存储 监控 关系型数据库
MySQL造数据占用临时表空间
MySQL造数据占用临时表空间
45 0