CakePHP:生成零星sql错误的数据库会话

CakePHP:生成零星sql错误的数据库会话,php,session,cakephp,Php,Session,Cakephp,我正在使用数据库会话,并且在日志文件中不断看到以下错误 2011-11-24 16:42:30警告:警告(512):SQL错误:1064:您有 SQL语法错误;检查与您的产品相对应的手册 MySQL服务器版本,以获得正确的语法,以便使用near'ASSession 其中,会话id='d1cc24fdacc4f7345fa1f2b4957d22eb'位于第行 1英寸 [(path)/cake/libs/model/datasources/dbo_source.php, 第684行] 我还没有收到我

我正在使用数据库会话,并且在日志文件中不断看到以下错误

2011-11-24 16:42:30警告:警告(512):SQL错误:1064:您有 SQL语法错误;检查与您的产品相对应的手册 MySQL服务器版本,以获得正确的语法,以便使用near'AS
Session

其中,
会话
id='d1cc24fdacc4f7345fa1f2b4957d22eb'位于第行 1英寸 [(path)/cake/libs/model/datasources/dbo_source.php, 第684行]

我还没有收到我的用户的任何投诉,但我认为他们看到了一个错误页面或正在注销。是否有其他人在CakePHP中的数据库会话中遇到过类似的问题

编辑

我使用的是CakePHP版本1.3.11

sessions表中有2800多条记录,定义如下

CREATE TABLE `cake_sessions` (
  `id` varchar(255) NOT NULL,
  `data` text,
  `expires` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

该查询似乎选择了一个无效(散列)id。这是哪个版本的Cake?我使用的是Cake版本1.3.11。我认为这无关紧要,所以我在发布错误消息时更改了几个数字。实际的散列是d1cc24fdacc4f7338fa1f2b4957d22eb。会话表的结构是什么?是否存在任何数据(只是为了确定)?Cake显然将散列字符串存储在会话表的id列中,而不是整数。这些错误往往有点难以调试,因为一切都是“自动”在Cake中完成的,这可能是一个好处,但在这种情况下是一个负担。Mench,感谢您迄今为止的帮助。我已经更新了我的问题以包含更多信息。谢谢!:)虽然我不确定我最终能否解决你的问题。表结构的SQL看起来很正常,我刚刚测试了一个
SELECT
,它类似于在没有任何问题的情况下导致您出错的那一个(
SELECT*FROM cake_sessions AS Session WHERE Session.id='d1cc24fdacc4f7338fa1f2b4957d2eb'
)。您能用用于设置数据库会话的代码更新您的问题吗?另外,请检查
/app/config/core.php
中的会话设置,以确定是否正确。