Mysql的sql语句不支持表名为变量的解决办法

By | 2012/10/31

最近才发现,如果sql语句中的表名为变量,不能直接用变量名,这样是不会解析的。

$table=”table1″;
……
$sql=”SELECT *  FROM `$table` order by `name`”;
mysql_query($sql, $connection);
……

变通的解决办法就是用php的连接来来改变sql语句,相当于直接挺入了表名:

$table=”table1″;
……
$sql=”SELECT *  FROM `”.$table.”` order by `name`”;
mysql_query($sql, $connection);
……

这样,不支持变量表名也可以用变量表名了。