首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MySQL INSERT语法

问MySQL INSERT语法
EN

Stack Overflow用户
提问于 2012-07-29 23:59:15
回答 2查看 10.9K关注 0票数 8

我有以下结构

代码语言:javascript
复制
user_id int(11)
right   int(11)
group_id int(11)
value   tinyint(1)

和3个查询

代码语言:javascript
复制
INSERT INTO  user_rights (`user_id`,`right`,`group_id`,`value`)
VALUES ( '42',  '160',  '1',  '1' );

INSERT INTO  user_rights ('user_id','right','group_id','value')
VALUES ( '42',  '160',  '1',  '1' );

INSERT INTO  user_rights (user_id,right,group_id,value)
VALUES ( '42',  '160',  '1',  '1' );

解释为什么只有第一个有效?

我这一生都在用第三个!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-07-30 00:01:49

RIGHT是一个mySQL reserved word。它只有在用反引号括起来时才会起作用。

当您不使用保留字时,它也可以在没有反引号的情况下工作。

第二种方法永远不会起作用,因为引号用于引用字符串,而不是数据库、表或列标识符。

票数 12
EN

Stack Overflow用户

发布于 2012-07-30 00:13:33

第二个也不起作用,因为" right“是mysql http://drupal.org/node/141051的保留关键字。如果你想处理查询,你必须使用` for right

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11710648

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档