2017-02-15 3 views
0

habe ich versucht, Boolesche Werte in MySQL-Datenbank zu aktualisieren, aber ich erhalten Fehler:aktualisieren Syntax von Booleschen Wert in mysql

com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: 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 'add=0, edit=0, delete=0, view=1 where id=3' at line 1

Tabelle: tempemp

DROP TABLE IF EXISTS `struts`.`tempemp`; 
CREATE TABLE `struts`.`tempemp` (
`id` int(10) unsigned NOT NULL auto_increment, 
`role` varchar(45) NOT NULL, 
`add` tinyint(1) NOT NULL default '0', 
`edit` tinyint(1) NOT NULL default '0', 
`delete` tinyint(1) NOT NULL default '0', 
`view` tinyint(1) NOT NULL default '0', 
PRIMARY KEY (`id`) 
) ENGINE=InnoDB DEFAULT CHARSET=latin1; 

Syntax: „update tempemp Set add = ?, edit = ?, delete = ?, view =? wobei id =? ";

+0

Es ist schlechte Praxis Vorrats-Worte als Spaltennamen zu verwenden, und Sie werden viele zusätzliche Aufwand in der Zukunft geben. –

+0

Haben Sie sich entschieden, MySQL-Schlüsselwörter zum Benennen Ihrer Spalten zu verwenden? –

+0

@SteveSmith danke. Das nächste Mal, wenn ich den richtigen Spaltennamen verwende. –

Antwort

0

Verwenden einfachen Anführungszeichen Reserve Wort zu entkommen:

update tempemp set `add`=0, `edit`=0, `delete`=0, `view`=1 where id=3; 
+0

Danke @Forward für Ihre Meinung. –

+0

Ich suche diesen Fehler auf vielen Seiten, kann aber keine Antwort finden. Nur Sie (@Forward) lösen diesen Fehler. –

Verwandte Themen