将 MySQL 中的 tinyint 的默认值更改为 1?


你可以对此使用 DEFAULT 命令。
以下是语法:

alter table yourTableName change yourColumnName yourColumnName TINYINT(1) DEFAULT 1 NOT NULL;

我们先创建一个表:

mysql> create table DemoTable
(
   Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   UserName varchar(20),
   UserAge int,
   isMarried tinyint(1)
);
Query OK, 0 rows affected (0.80 sec)

我们检查一下此表的描述:

mysql> desc DemoTable;

这将生成以下输出:

+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+
| Id        | int(11)     | NO   | PRI | NULL    | auto_increment |
| UserName  | varchar(20) | YES  |     | NULL    |                |
| UserAge   | int(11)     | YES  |     | NULL    |                |
| isMarried | tinyint(1)  | YES  |     | NULL    |                |
+-----------+-------------+------+-----+---------+----------------+
4 rows in set (0.21 sec)

以下是将 tinyint 默认值更改为 1 的查询:

mysql> alter table DemoTable change isMarried isMarried TINYINT(1) DEFAULT 1 NOT NULL;
Query OK, 0 rows affected (1.29 sec)
Records: 0 Duplicates: 0 Warnings: 0

让我们再次检查一下表的描述。tinyint 的默认值已更改为 1:

mysql> desc DemoTable;

这将生成以下输出:

+-----------+-------------+------+-----+---------+----------------+
| Field     | Type        | Null | Key | Default | Extra          |
+-----------+-------------+------+-----+---------+----------------+
| Id        | int(11)     | NO   | PRI | NULL    | auto_increment |
| UserName  | varchar(20) | YES  |     | NULL    |                |
| UserAge   | int(11)     | YES  |     | NULL    |                |
| isMarried | tinyint(1)  | NO   |     | 1       |                |
+-----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)

更新日期:2019 年 7 月 30 日

1 千次以上浏览

开启 职业生涯

完成课程获取认证

开始学习
广告
© . All rights reserved.