升级后出现错误的Mysql查询

时间:2012-03-31 01:37:03

标签: mysql sql database

为什么这个简单的查询不起作用。在升级我的mysql版本之前我知道它没关系。我知道我在新版本中有一些语法更改。但这是简单的查询没有加入,但不起作用。

SELECT * FROM ship WHERE sensitive='Y' and entry_date between  $startdate and $enddate

请帮帮我。

修改

从mysql4升级到mysql5,错误是'语法错误'

2 个答案:

答案 0 :(得分:2)

我认为你从mysql 4升级到了5。敏感是mysql5中的新reserved keyword。在查询中使用它时,需要将其括在反引号(`)中。 Mysql 5允许使用保留字进行查询但使用反引号。

尝试:

SELECT * FROM ship WHERE  `sensitive`='Y' and entry_date between  $startdate and $enddate

答案 1 :(得分:0)

'$ start date'中有“space”字符。这可能是一个原因。所以,如果$ startdate和$ enddate是时间戳:

SELECT * FROM ship WHERE `sensitive`='Y' and entry_date between $startdate and $enddate

如果它们不是时间戳,但是以iso格式表示日期,但它们用单引号。