获取服务器的状态信息:
mysql> status
--------------
mysql Ver 14.14 Distrib 5.7.17, for Win64 (x86_64)
Server version: 5.7.17-log MySQL Community Server (GPL)
--------------
表的定义信息:
mysql> desc t_flower;
+------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+-------------+------+-----+---------+----------------+
| id | int(10) | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | NULL | |
| price | float | NO | | NULL | |
| production | varchar(30) | NO | | NULL | |
+------------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
mysql> show create table t_flower \G
*************************** 1. row ***************************
Table: t_flower
Create Table: CREATE TABLE `t_flower` (
`id` int(10) NOT NULL AUTO_INCREMENT COMMENT '编号',
`name` varchar(30) NOT NULL COMMENT '花名',
`price` float NOT NULL COMMENT '价格',
`production` varchar(30) NOT NULL COMMENT '原产地',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)
修改表中字段,将 price 字段的类型从 float 修改为 decimal:
关于 DECIMAL 类型:https://dev.mysql.com/doc/refman/8.0/en/fixed-point-types.html
注:语法“ALTER TABLE 表名 CHANGE COLUMN 原字段名称 新字段名称 类型 约束;”。
mysql> alter table t_flower change column price price decimal(5,2) not null comment '价格';
Query OK, 0 rows affected (0.52 sec)
Records: 0 Duplicates: 0 Warnings: 0
查看修改之后的结果:
mysql> desc t_flower;
+------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------+--------------+------+-----+---------+----------------+
| id | int(10) | NO | PRI | NULL | auto_increment |
| name | varchar(30) | NO | | NULL | |
| price | decimal(5,2) | NO | | NULL | |
| production | varchar(30) | NO | | NULL | |
+------------+--------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
mysql> show create table t_flower \G
*************************** 1. row ***************************
Table: t_flower
Create Table: CREATE TABLE `t_flower` (
`id` int(10) NOT NULL AUTO_INCREMENT COMMENT '编号',
`name` varchar(30) NOT NULL COMMENT '花名',
`price` decimal(5,2) NOT NULL COMMENT '价格',
`production` varchar(30) NOT NULL COMMENT '原产地',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
1 row in set (0.00 sec)