SQL 命令语法错误?
SQL Command Syntax Error?
我绝对后悔问了这么简单的问题,但它一直让我崩溃,我不确定是因为更新还是其他原因。但是谁能告诉我以下 SQL 语句的错误是什么?
$iname = mysql_query("SELECT * FROM calendarevents WHERE 'EventMonth'="January" AND 'EventDay'="1"")
or die(mysql_error());
使用以下内容:
$iname = mysql_query("SELECT * FROM calendarevents WHERE
活动月='January' AND
活动日='1'")
or die(mysql_error());
您使用双引号 (") 的方式是第一个也是最大的问题,您应该使用反引号 (`) 而不是单引号 (') 来转义 table 和列名在 mysql.
您不能在 sql 语句中使用双引号 ["]。
january 和 1 需要用单引号而不是双引号。
您也不需要在字段名称周围加上引号。
"SELECT * FROM calendarevents WHERE 'EventMonth'="January" AND 'EventDay'="1""
应该是
"SELECT * FROM calendarevents WHERE EventMonth='Januay' AND EventDay='1'"
这应该会更好,使用正确的引号和反引号,请查看查询
$iname = mysql_query("SELECT * FROM calendarevents WHERE `EventMonth`= 'January' AND `EventDay`= 1 ")
旁注:
请考虑使用 PDO or mysqli_ 而不是 mysql_* 函数。
此扩展已从 PHP 5.5.0 开始弃用,将来会被删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展名。另请参阅 MySQL: choosing an API guide and related FAQ 了解更多信息。
$iname = mysql_query("SELECT * FROM `calendarevents` WHERE `EventMonth`="January" AND `EventDay`=1")
or die(mysql_error());
试试这个:
$query = "SELECT * FROM calendarevents WHERE EventMonth='January' AND EventDay = '1'";
$iname = mysql_query($query);
我绝对后悔问了这么简单的问题,但它一直让我崩溃,我不确定是因为更新还是其他原因。但是谁能告诉我以下 SQL 语句的错误是什么?
$iname = mysql_query("SELECT * FROM calendarevents WHERE 'EventMonth'="January" AND 'EventDay'="1"")
or die(mysql_error());
使用以下内容:
$iname = mysql_query("SELECT * FROM calendarevents WHERE
活动月='January' AND
活动日='1'")
or die(mysql_error());
您使用双引号 (") 的方式是第一个也是最大的问题,您应该使用反引号 (`) 而不是单引号 (') 来转义 table 和列名在 mysql.
您不能在 sql 语句中使用双引号 ["]。
january 和 1 需要用单引号而不是双引号。
您也不需要在字段名称周围加上引号。
"SELECT * FROM calendarevents WHERE 'EventMonth'="January" AND 'EventDay'="1""
应该是
"SELECT * FROM calendarevents WHERE EventMonth='Januay' AND EventDay='1'"
这应该会更好,使用正确的引号和反引号,请查看查询
$iname = mysql_query("SELECT * FROM calendarevents WHERE `EventMonth`= 'January' AND `EventDay`= 1 ")
旁注:
请考虑使用 PDO or mysqli_ 而不是 mysql_* 函数。
此扩展已从 PHP 5.5.0 开始弃用,将来会被删除。相反,应该使用 MySQLi 或 PDO_MySQL 扩展名。另请参阅 MySQL: choosing an API guide and related FAQ 了解更多信息。
$iname = mysql_query("SELECT * FROM `calendarevents` WHERE `EventMonth`="January" AND `EventDay`=1")
or die(mysql_error());
试试这个:
$query = "SELECT * FROM calendarevents WHERE EventMonth='January' AND EventDay = '1'";
$iname = mysql_query($query);