【发布时间】:2017-07-13 12:30:47
【问题描述】:
我在表 room 中有以下列现在我想将列 property_id 的定义从 NULL 更改为 NOT NULL 我该怎么做
以下查询不起作用
ALTER TABLE `room` CHANGE `property_id` `property_id` bigint(20) NOT NULL;
Column的实际定义是:
`property_id` bigint(20) DEFAULT NULL,
【问题讨论】:
-
在更改表定义之前是否有任何行包含
NULL? -
是的,我应该删除那些行吗?
-
在更改列条件之前是的
-
@SFAH 您本身不需要删除它们。但是当您更改列定义时,它们不能是
NULL。您需要如何处理数据取决于您的数据以及您如何使用它。 -
@SFAH,那么你不能这样做,你必须先处理那些
NULL,否则如果会与列属性冲突
标签: mysql sql null default alter-table