如何使表中的所有字段为NULL?

时间:2013-09-23 09:45:05

标签: phpmyadmin

我知道如何将列设为null:

  

UPDATE company_master SET company_info_html = NULL

但是如果我想让表的所有字段都为NULL,我该怎么办?

我正在使用 phpmyadmin

2 个答案:

答案 0 :(得分:1)

我想不出有什么理由可能你需要做那样的事情。

但要这样做(即使您使用的是PHPMyAdmin),您需要在查询中包含所有这些列:

UPDATE
    `company_master`
SET
    `column_1` = NULL ,
    `column_2` = NULL ,
    `column_3` = NULL
WHERE
    column_1 = 1

(将column_1,column_2等替换为实际的列名称)

如果您打算对表中的所有行执行此操作,请删除where子句:

UPDATE
    `company_master`
SET
    `column_1` = NULL ,
    `column_2` = NULL ,
    `column_3` = NULL

但是,您可能最终会出现错误,因为这些列中至少有一列可能具有主键或唯一键约束。例如,在我的测试中,第一列具有主键约束:

#1062 - Duplicate entry '0' for key 'PRIMARY'

答案 1 :(得分:0)

如果在SET之后列出它们(以逗号分隔),则可以更新update语句中的多个列。但这很没用,因为所有行最终都是相同的,应该删除重复项。所以你最终得到一行空值。为了更容易实现这一点,您可以截断表并插入一个空行(使用默认值)或一行空值...