MySQL从Null变为非Null

Ara*_*ran 1 mysql null

我有一个已设置为允许Null的字段,但我现在想要将其更改为不允许Null.

当我试图改变这个时,我不能,因为PhpMyAdmin已将所有先前的记录设置为Null.

我该如何解决这个问题?

有没有我可以放置的查询将删除所有Null值并将字段设置为Non Null?

Vot*_*ple 5

当然.但你是什么意思"删除所有的NULL价值观?" 这是否意味着删除NULL该字段中包含所有行的所有行?如果是这样,你可以这样做:

DELETE FROM your_table WHERE your_field IS NULL;
Run Code Online (Sandbox Code Playgroud)

如果要保留这些行,则必须在该字段中添加其他值.有没有理由?如果是这样,你可以这样做:

UPDATE your_table SET your_field = 42 WHERE your_field IS NULL;
Run Code Online (Sandbox Code Playgroud)

(当然,在哪里,42你想要使用的是什么价值.)

如果你想保留行,并且没有任何其他值可以使用,那么NULL现在的那些值应该保留,并且可能是时候重新评估你想要将字段设置为的原因了NOT NULL.