2012-07-10 5 views
0

내 로그 테이블에 로그 레코드를 삽입하려고합니다. 하지만 필드 값의 길이가 199자를 초과하면 Apache가 다시 시작되고 브라우저에서 net :: ERR_CONNECTION_RESET이라고 말합니다. 어떤 문제가젠드 쿼리 최대 필드 길이

다음
mysql_query($sql); 

내가 그나마 : 내가 사용하여 프레임 워크를 사용 해달라고하면

$db = Global_Db_Connection::getInstance(); 
    $sql = "INSERT INTO log_table (log) VALUES ('ddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddddd')"; 
    $db->query($sql); 

: 나는 내가 다음 코드 줄 내 레코드를 삽입, 젠드 프레임 워크를 사용하고 있습니다 .

누구나 Zend에서이 제한을 해결하는 방법을 알려 줄 수 있습니까?

FreeBSD 같은 문제로 사용해 보았습니다. 또한 존재하지 않는 테이블에 삽입하려고하면 같은 오류가 반환된다는 것을 알게되었습니다. 값을 줄이면 테이블이 존재하지 않는다는 오류가 발생합니다.

+0

기본적으로 PDO를 사용해 보셨습니까? –

+0

정확히 무슨 뜻인지는 모르겠지만 database.adapter = pdo_mysql이 내 ini 파일에 있습니다. – fr0sty

+0

Windows에서 Apache/PHP가 실행 중입니까? – drew010

답변

0

답변이 늦을 수도 있지만, 나는 영혼을 가지고 있습니다. 젠드에 대한 두 솔루션은 내가 발견

  1. $db->getConnection()->query($sql); // use getConnection()

  2. $db->exec($sql);

이 문제는 메모리 스택의 크기입니다. 리눅스에서는 필요에 따라 스택이 커지지 만 Windows에서는 & Mac이됩니다. 스택 크기 때문에이 문제가 발생합니다. 이것을 위해 php.net (here)에서 제기 된 티켓을보십시오. 즐겨!!!