当“ - 评论”发生时,为什么“ - 评论”不起作用?

时间:2011-05-16 21:53:25

标签: php mysql

我终于找到了为什么我的PHP脚本无效。这是因为MySQL“--comment”而不是“ - comment”。我最近开始使用PHP,直到那时,我一直使用“--comment”。现在,我想知道为什么在PHP的mysql_query()中不允许这样做?

<?php

$query = "SELECT firstname,
-- comment
lastname, address,
--not a comment
age FROM friends WHERE firstname='%s' AND lastname='%s'";

// Perform Query
$result = mysql_query($query);

// Check result
// This shows the actual query sent to MySQL, and the error. Useful for debugging.
if (!$result) {
    $message  = 'Invalid query: ' . mysql_error() . "\n";
    $message .= 'Whole query: ' . $query;
    die($message);
}

?>

5 个答案:

答案 0 :(得分:5)

MySQL docs个空格是必需的。此外,如前一个链接页面所述,MySQL偏离了此语法中的规范(只有2个连续短划线[--this is a comment])。

答案 1 :(得分:3)

-- 开头的MySQL评论必须后跟一个空格才能被视为评论。这是MySQL特有的,与PHP无关。您也可以使用/* comment */# comment #

答案 2 :(得分:2)

来自manual“ - ”(双破折号)注释样式要求第二个破折号后跟至少一个空格或控制字符(例如空格,制表符,换行符等)。 < / p>

答案 3 :(得分:1)

因为MySQL开发团队决定如果 SELECT -1是有效的代码来选择-1
然后SELECT --1应该是有效的(我的)SQL用于选择+1。

答案 4 :(得分:0)

因为评论以三个字符开头:破折号,短划线,空格。 “ - ”