MySQL更新问题

时间:2011-04-30 21:32:41

标签: mysql sql

我在MySQL中更新我的表字段'delete'时遇到错误

CREATE TABLE IF NOT EXISTS `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `name` text NOT NULL,
  `delete` varchar(3) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=29 ;

INSERT INTO `student` (`name`, `delete`) VALUES('newa', 'no')

UPDATE SET delete='yes

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'set delete-'yes'' at line 1

4 个答案:

答案 0 :(得分:1)

delete是mySQL中的保留字。

您需要在反引号中包装字段名称:

 SET `delete` = .....

或者,最好使用不同的字段名称。

答案 1 :(得分:0)

尝试:

UPDATE student SET `delete`='yes'

答案 2 :(得分:0)

您忘记了UPDATE和SET之间的表名。您应该有UPDATE学生SET delete ='yes'

此外,您不应将保留关键字用作列名。

答案 3 :(得分:0)

使用`delete`而不是删除。请不要使用保留字来命名表和列。您也可以将列重命名为is_deleted