最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
当前位置: 首页 - 科技 - 知识百科 - 正文

MySQL数据表的基本操作二:表结构查看、修改与表操作_MySQL

来源:懂视网 责编:小采 时间:2020-11-09 19:42:48
文档

MySQL数据表的基本操作二:表结构查看、修改与表操作_MySQL

MySQL数据表的基本操作二:表结构查看、修改与表操作_MySQL:一、查看数据表结构 1) 查看表基本结构语句 DESCRIBE 语法:DESCRIBE 表名; 示例: mysql> DESCRIBE product; +--------------+--------------+------+-----+---------+----------------+ | Field | Type |
推荐度:
导读MySQL数据表的基本操作二:表结构查看、修改与表操作_MySQL:一、查看数据表结构 1) 查看表基本结构语句 DESCRIBE 语法:DESCRIBE 表名; 示例: mysql> DESCRIBE product; +--------------+--------------+------+-----+---------+----------------+ | Field | Type |

一、查看数据表结构

1) 查看表基本结构语句 DESCRIBE

语法:DESCRIBE 表名;

示例:

mysql> DESCRIBE product;
+--------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+----------------+
| product_id | int(11) | NO | PRI | NULL | auto_increment |
| product_name | varchar(50) | NO | | NULL | |
| description | varchar(200) | YES | | NULL | |
+--------------+--------------+------+-----+---------+----------------+

语法:DESC 表名;

示例:

mysql> DESC product;
+--------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------+--------------+------+-----+---------+----------------+
| product_id | int(11) | NO | PRI | NULL | auto_increment |
| product_name | varchar(50) | NO | | NULL | |
| description | varchar(200) | YES | | NULL | |
+--------------+--------------+------+-----+---------+----------------+
说明:

NULL: 表示该列是否可以存储NULL值;Key: 表示该列是否已编制索引。PRI表示是表主键的一部分;UNI表示该列是UNIQUE索引一部分;MUL表示该列中某个给定值允许出现多次;Default: 表示该列是否有默认值,如果有是多少;Extra: 表示可以获取的与给定列有关的附加信息。例如AUTO_INCREMENT等;

2) 查看表详细结构语句 SHOW CREATE TABLE

功能说明:

用来显示创建表时的语句

语法:

SHOW CREATE TABLE <表名\G>;
提示:

该语句可以用来查看创建表的详细语句;还可以用来查看存储引擎和字符编码;加上参数'\G'后,可使显示结果更加直观,易于查看;

示例:

mysql> show create table bm\G;
*************************** 1. row ***************************
 Table: bm
Create Table: CREATE TABLE `bm` (
 `id` int(11) NOT NULL,
 `name` varchar(22) DEFAULT NULL,
 `location` varchar(20) DEFAULT NULL,
 PRIMARY KEY (`id`),
 UNIQUE KEY `STH` (`name`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1
1 row in set (0.02 sec)
二、修改数据表

1) 修改表名

语法

ALTER TABLE <旧表名> RENAME [TO] <新表名>;

示例

ALTER TABLE bm RENAME department;

2) 修改字段的数据类型

语法

ALTER TABLE <表名> MODIFY <字段名> <数据类型>; 

示例

ALTER TABLE department MODIFY id VARCHAR(11);

3) 修改字段名

语法

ALTER TABLE <表名> CHANGE <旧字段名><新字段名><新数据类型>;

示例

ALTER TABLE employees CHANGE location loc VARCHAR(350);//类型可以和原来保持一样,不用修改

4) 添加字段

语法

ALTER TABLE <表名> ADD <新字段名> <数据类型> [约束条件] [FIRST|AFTER已存在字段名];//默认添加到最后一列后面

示例

ALTER TABLE employees ADD manager_id INT(10);
ALTER TABLE employees ADD age INT(11) NOT NULL;//非空约束
ALTER TABLE employees ADD sal FLOAT FIRST;//在表的第一列添加
ALTER TABLE employees ADD hire_date DATE AFTER manager_id;//在指定列后添加

5) 删除字段

语法

ALTER TABLE <表名> DROP <字段名>;
示例
ALTER TABLE employees DROP manager_id;
ALTER TABLE employees DROP hire_date;

6) 修改字段的排列位置

语法

ALTER TABLE <表名> MODIFY <字段1><数据类型> FIRST|AFTER <字段2>;
示例
ALTER TABLE employees MODIFY name VARCHAR(22) FIRST;//把name移动到第一列
ALTER TABLE department MODIFY location VARCHAR(350) AFTER department_id;//把location列移到department_id列之后

7) 更改表的存储引擎

MySQL支持的主要存储引擎

引擎名 是否支持
FEDERATED
MRG_MYISAM
MyISAM
BLACKHOLE
CSV
MEMORY
ARCHIVE
InnoDB 默认
PERFORMANCE_SCHEMA

语法

ALTER TABLE <表名> ENGINE=<更改后的存储引擎名>;
示例
ALTER TABLE department ENGINE=MyISAM;

8) 删除表的外键约束

语法

ALTER TABLE <表名> DROP FOREIGN KEY <外键约束名>;
示例
ALTER TABLE employees DROP FOREIGN KEY fk_emp_dept; 

三、删除数据表

1) 删除没有被关联的表

语法

DROP TABLE [IF EXISTS] 表1,表2,...表n;

示例

DROP TABLE IF EXISTS employees; 

2) 删除被其他表关联的主表

说明:先要删除外键

示例
mysql> create database rm_tab;
Query OK, 1 row affected (0.00 sec)

mysql> use rm_tab;
Database changed
mysql> create table department
 -> (
 -> id int(11) primary key,
 -> name varchar(22),
 -> location varchar(200)
 -> );
Query OK, 0 rows affected (0.07 sec)

mysql> create table employee
 -> (
 -> id int(11) primary key,
 -> name varchar(25),
 -> department_id int(11),
 -> salary float,
 -> constraint fk_emp_dept foreign key(department_id) references department(id)
 -> );
Query OK, 0 rows affected (0.10 sec)

mysql> drop table department;
ERROR 1217 (23000): Cannot delete or update a parent row: a foreign key constraint fails
mysql> alter table employee drop foreign key fk_emp_dept;
Query OK, 0 rows affected (0.22 sec)
Records: 0 Duplicates: 0 Warnings: 0

mysql> drop table department;
Query OK, 0 rows affected (0.04 sec)

mysql> show tables;
+------------------+
| Tables_in_rm_tab |
+------------------+
| employee |
+------------------+
1 row in set (0.00 sec)

如果您们在尝试的过程中遇到什么问题或者我的代码有错误的地方,请给予指正,非常感谢!

联系方式:david.louis.tian@outlook.com

版权@:转载请标明出处!

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文档

MySQL数据表的基本操作二:表结构查看、修改与表操作_MySQL

MySQL数据表的基本操作二:表结构查看、修改与表操作_MySQL:一、查看数据表结构 1) 查看表基本结构语句 DESCRIBE 语法:DESCRIBE 表名; 示例: mysql> DESCRIBE product; +--------------+--------------+------+-----+---------+----------------+ | Field | Type |
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top