构建SQL查询时是否应包含分号

时间:2014-02-03 16:40:10

标签: php mysql joomla2.5

当我从PHP(Joomla)应用程序访问mysql时。我应该在我发送的SQL查询中包含分号吗?即。

$db->setQuery("SELECT * FROM `blah`;");

$db->setQuery("SELECT * FROM `blah`");

这可能是分裂头发的情况,但我想要始终如一地做 - 不妨选择一种显着或微不足道的方式。

注意:Joomla平台代码在查询中包含分号。但我不相信。

更新:我知道无论是否使用分号都可以使用,我想问一种方式与另一种方式相比是否有任何优势(除非分号是一个字符更短)。

3 个答案:

答案 0 :(得分:6)

分号主要用于在处理SQL时分离多个查询,所以不需要提供分号。

答案 1 :(得分:1)

我将假设setQuery()函数将这些SQL语句单独存储在一个数组中,而不是创建一个可以同时运行的连接字符串,因此在这种情况下,您不需要使用分号。您可能会破坏矩阵,尝试运行两个这样的SELECT。

当你想要将许多行插入到数据库中并且不希望数千次调用execute()时,我可以看到分号变得有用但是这个语法再次适用于此:

INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);

我在MySQL Workbench中运行一系列查询时主要使用了分号,因为光标需要位于您希望在点击那个小执行闪电时运行的查询内部。

答案 2 :(得分:0)

没有分号只需要查询就可以正常工作。