0

《CodeIgniter 1.7 Professional Development》一书在第3章的“使用回调”部分有如下示例。

$query = $this->db->
query("SELECT * FROM `user_data` WHERE `email` = '$email'");

在这个例子中,表名或字段名周围的反引号的含义或作用是什么?反引号有什么作用?

谢谢。

此外,书中的另一个示例如下:

$query = $this->db->query('SELECT * FROM 'users'');

在这种情况下,前引号与后引号相同吗?

这些构造是否符合标准 SQL?

谢谢。

4

2 回答 2

1

反引号只是说“这不是 SQL 保留关键字”。它们理论上还允许在表名中使用空格和特殊字符,尽管您为什么要这样做超出了良好的实践理智。

通常建议使用它们,以避免与“name”、“limit”或“count”等列名产生歧义。

于 2013-07-10T12:54:50.817 回答
1

这不是 Codeigniter 的东西,而是 SQL 的东西。

如果您使用活动记录,无论如何您都不会在 CI 中使用它们。该框架将处理转义和其他内容,因此您不必考虑这些事情 - 这就是您在查询中使用反引号的原因之一。

于 2013-07-10T12:57:08.700 回答