我在MySQL中执行了此查询,但它显示a syntax error near Unique key statement
。有人可以帮我清除错误吗?
CREATE TABLE IF NOT EXISTS `friends` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT,
`providerId` int(10) unsigned NOT NULL DEFAULT '0',
`requestId` int(10) unsigned NOT NULL DEFAULT '0',
`status` binary(1) NOT NULL DEFAULT '0', PRIMARY KEY (`Id`),
UNIQUE KEY `Index_3` (`providerId`,`requestId`),
KEY `Index_2` (`providerId`,`requestId`,`status`))
ENGINE=InnoDB DEFAULT CHARSET=latin1
COMMENT='providerId is the Id of the users who wish to be friend with' AUTO_INCREMENT=7 ;
错误消息如下:
错误1064(42000):您的SQL语法出错;查看与MySQL服务器版本对应的手册,以便在''Id'附近使用正确的语法),UNIQUE KEY Index_2(providerId,requestId),KEY Index_3(providerId,requ'在第1行
答案 0 :(得分:2)
最后没有,
`status` binary(1) NOT NULL DEFAULT '0', PRIMARY KEY (`Id`),
答案 1 :(得分:0)
尝试将关键字PRIMARY KEY ('Id')
放在... AUTO_INCREMENT
之后的第一列中,如下所示:
CREATE TABLE IF NOT EXISTS `friends` (
`Id` int(10) unsigned NOT NULL AUTO_INCREMENT PRIMARY KEY,
`providerId` int(10) unsigned NOT NULL DEFAULT '0',
`requestId` int(10) unsigned NOT NULL DEFAULT '0',
`status` binary(1) NOT NULL DEFAULT '0',
UNIQUE KEY `Index_3` (`providerId`,`requestId`),
KEY `Index_2` (`providerId`,`requestId`,`status`))
ENGINE=InnoDB DEFAULT CHARSET=latin1
COMMENT='providerId is the Id of the users who wish to be friend with' AUTO_INCREMENT=7 ;
答案 2 :(得分:-1)
INSERT INTO Carttable (id unique,date,title,supplier,item_price,item_qty,author,author_image,image,image2,image3,categories,categories_id,main_category_id,tags,post_data,views,status,item_status,discount,offer_price,qty_1,price_1,offer_price_1,qty_2,price_2,offer_price_2,qty_3,price_3,offer_price_3,mcid) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)