2013-04-11 150 views
-2

我试图从我的表中获取信息在PHP和MySQL,但问题是,表是所有数字。如果我做SQL SELECT * FROM语法错误

mysql_query("SELECT * FROM Hello") 

它工作正常,

,如果我做

mysql_query("SELECT * FROM 123") 

它说,我有不正确的语法。有人可以向我解释如何使用数字作为表名吗?

+0

'123'不是有效的表名。即使有使用它作为表名的解决方法,我强烈建议您使用不同的名称。 –

+0

下面是在mysql中命名对象的规则 - 包括表格:http://dev.mysql.com/doc/refman/5.1/en/identifiers.html – 99823

回答

2

试试这个:

SELECT * FROM `123` 

你需要前后

+0

或者甚至更好地给你的表格理智的名字;-) – PeeHaa

+0

取决于服务器配置。更好地连接现有的和更好的解释材料,然后再单独回答那种问题。 – hakre

1

要使用保留字,数字,用空格和标点符号等作为列或表名,名与反引号把它包:

SELECT * FROM `123` 
0

需要引用数字,如“123”

0

至于其他人已经提到的,你可以在反引号包住表名给你:

SELECT * FROM `123` 

然而,使用数字作为表名是什么,你必须非常仔细地考虑。原因是之后可能会导致混淆。你必须记住,对于这个特定表的每一个查询,你都必须用反引号包装它。

不知道为什么你有兴趣在纯粹的数字中命名表,很难给出更好的建议。但请仔细考虑为什么要使用数字作为SQL表名。

相关问题