没有WHERE子句的UPDATE查询没有工作

时间:2013-01-27 11:21:46

标签: mysql sql

我遇到了这种奇怪的情况..我正在尝试执行并更新没有where子句的查询..这是查询

UPDATE `siteconfig` 
SET `homepagereview` = 'Justine Pope, London', 
`homepagetitle1` = 'Lorem ipsum dolor sit amet', 
`homepagecontent1` = 'Lorem ipsum dolor sit amet'

当我执行查询时,它根本不做任何事情。我还插入了一个带有NULL值的行并执行了这个更新查询,但仍然没有任何反应..!

这是表格结构......

CREATE TABLE `siteconfig` (
    `homepagereview` VARCHAR(255) NULL DEFAULT NULL,
    `googleadsensecode` VARCHAR(255) NULL DEFAULT NULL,
    `analyticscode` VARCHAR(255) NULL DEFAULT NULL,
    `sliderimage1` VARCHAR(255) NULL DEFAULT NULL,
    `sliderimage2` VARCHAR(255) NULL DEFAULT NULL,
    `sliderimage3` VARCHAR(255) NULL DEFAULT NULL,
    `homepagetitle1` VARCHAR(255) NULL DEFAULT NULL,
    `homepagecontent1` VARCHAR(1000) NULL DEFAULT NULL,
    `homepagetitle2` VARCHAR(255) NULL DEFAULT NULL,
    `homepagecontent2` VARCHAR(1000) NULL DEFAULT NULL,
)
COMMENT='misc settings for website'
COLLATE='latin1_swedish_ci'
ENGINE=MyISAM;

1 个答案:

答案 0 :(得分:1)

您可以在代码前加上:

SET SQL_SAFE_UPDATES=0;

SQL_SAFE_UPDATES为1时,不允许在未指定键列的情况下对表执行UPDATEDELETE命令。这样做基本上是为了避免用户在忘记添加WHERE子句时意外删除表数据。