Zend framework zend查询最大字段长度

Zend framework zend查询最大字段长度,zend-framework,field,max,Zend Framework,Field,Max,我正在尝试在我的日志表中插入日志记录。但不知何故,当字段值lenght超过199个字符时,我的apache会重新启动,浏览器会显示net::ERR\u CONNECTION\u RESET。 我使用的是Zend框架,因此我使用以下代码行插入我的记录: $db = Global_Db_Connection::getInstance(); $sql = "INSERT INTO log_table (log) VALUES ('dddddddddddddddddddddddddddd

我正在尝试在我的日志表中插入日志记录。但不知何故,当字段值lenght超过199个字符时,我的apache会重新启动,浏览器会显示net::ERR\u CONNECTION\u RESET。 我使用的是Zend框架,因此我使用以下代码行插入我的记录:

    $db = Global_Db_Connection::getInstance();
    $sql = "INSERT INTO log_table (log) VALUES ('ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd')";
    $db->query($sql);
如果我不使用框架,请使用:

    mysql_query($sql);
那我就没有任何问题了

有人能告诉我如何在Zend中修复此限制吗


在FreeBSD上尝试了同样的问题。我还发现,当试图将其插入到不存在的表中时,它会返回相同的错误。只有在缩短该值后,才会出现表格不存在的错误。

回答可能会晚,但我有答案。我发现zend有两种解决方案:

  • $db->getConnection()->query($sql);//使用getConnection()

  • $db->exec($sql)


  • 这个问题是因为内存堆栈的大小。在linux上,堆栈会根据需要增长,但在Windows和Mac上,由于堆栈的大小,这个问题会变得冒泡。为此,在php.net()中提出了一个问题,请看一看。享受

    您是否尝试在本机上使用PDO?我不完全理解您的意思,但我的ini文件中有database.adapter=PDO_mysql是在Windows上运行的Apache/PHP吗?@fr0sty,Zend_db内部使用PDO,因此我建议您直接尝试使用PDO,看看这是否是Zend_db、PDO或PHP本身的限制。另一个问题,你能检查一下你的日志,看看抛出了什么错误吗?我想知道您是否试图在mysql列中插入太长的值(比如VARCHAR(200));在Windows上运行。当使用mysql\u connect时,mysql\u选择\u db和mysql\u query执行查询我没有任何问题。所以对我来说,这似乎是Zend的一个限制。Apache抛出错误“[Wed Jul 11 09:22:21 2012][注意]父进程:子进程已退出,状态为255--正在重新启动。”mysql日志中没有错误。