Php Mysql在插入时抛出错误

Php Mysql在插入时抛出错误,php,mysql,sql,sql-insert,Php,Mysql,Sql,Sql Insert,我有一张桌子 CREATE TABLE IF NOT EXISTS `employee` ( `ID` int(11) NOT NULL AUTO_INCREMENT, `NAME` varchar(255) DEFAULT NULL, `SALARY` int(11) DEFAULT NULL, `DEPT` varchar(10) DEFAULT NULL, PRIMARY KEY (`ID`) ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCR

我有一张桌子

CREATE TABLE IF NOT EXISTS `employee` (
`ID` int(11) NOT NULL AUTO_INCREMENT,
`NAME` varchar(255) DEFAULT NULL,
`SALARY` int(11) DEFAULT NULL,
`DEPT` varchar(10) DEFAULT NULL,
PRIMARY KEY (`ID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;
如果我为上面的表插入值,就像下面的表一样,它会抛出错误

INSERT INTO employee ('NAME', 'SALARY', 'DEPT') VALUES ('user test', 10000, 'ADMIN');

删除列名上的单引号

INSERT INTO employee (NAME, SALARY, DEPT) VALUES ('user test', 10000, 'ADMIN');
单引号表示字符串文字,列名表示标识符。服务器抛出异常,因为列需要标识符而不是字符串文本。用单引号包装标识符将其转换为字符串

如果您拥有的列名和表名恰好是mysql保留关键字列表中的关键字之一,则可以使用倒勾来分隔。

更改此设置

INSERT INTO employee ('NAME', 'SALARY', 'DEPT') VALUES ('user test', 10000, 'ADMIN');


如果您收到错误消息,请将其与您的问题一起发布。错误消息有一个目的:帮助诊断问题。别让我们猜!耶,猜谜游戏!
INSERT INTO employee (`NAME`, `SALARY`, `DEPT`) VALUES ('user test', 10000, 'ADMIN');