为什么我无法成功插入数据库

时间:2018-05-12 11:45:11

标签: sql mysqli

我想在mysql中插入一组数据。

我做了

INSERT INTO goods_table (name,kind,price,discount, store ,detail)
            VALUES("abc","A",3960,10,100,'adf');

表的定义:

CREATE TABLE `goods_table` (
  `id` int(4) AUTO_INCREMENT NOT NULL ,
  `name` varchar(45) NOT NULL,
  `kind` varchar(20) NOT NULL,
  `price` int(11) NOT NULL,
  `discount` int(11) DEFAULT NULL,
  `store` int(11) NOT NULL,
  `detail` varchar(100) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

我已经检查了mysql mannual的insert语句

  

INSERT INTO tbl_name(a,b,c)VALUES(1,2,3),(4,5,6),(7,8,9);

我不知道为什么mysql总是多次报告同样的错误!

    ERROR 1064 (42000): 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 
        '("abc","A",3960,10,100,'adf')' at line 1

这是一个非常简单的操作..我已经检查了我的陈述的特征到官方的例子。我整个下午都被这个简单的陈述所困扰,这是令人难以置信的。

更新 我试着改变引号的方式

insert into `goods_table` (`name`,`kind`,`price`,`discount`,`store`)
values ('abc','A',3960,10,100);

它不会改变错误

ERROR 1064 (42000): 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 ')
values ('abc','A',3960,10,100)' at line 1

很多人说这是由于使用双引号引起的,但事实并非如此。 我按照答案执行

INSERT INTO goods_table (name,kind,price,discount, store ,detail)VALUES("abc","A",3960,10,100,"adf");

我使用双引号,它确实

1 个答案:

答案 0 :(得分:1)

您使用

这是一个特殊的角色。

请改用:

) 

完整查询:

insert into `goods_table` (`name`,`kind`,`price`,`discount`,`store`) values ('abc','A',3960,10,100);
                                                                   ^------ here