2013-05-14 4 views
0

Я получаю эту проблему при попытке запустить любой запрос к Sybase из PHP:php sybase Допустимый объем памяти исчерпан?

  • PHP 5.4.3 (CGI-FCGI) (постройки: 9 мая 2013 17:03:23)
  • построены --with-кар-Sybase =/путь/к/FreeTDS
  • код:
 

    <?php 
    $con = sybase_connect('server', 'user', 'pwd'); //connects fine 
    $q = sybase_query("select col=1", $con);  //error here, regardless of SQL 
    ?> 

  • Выход:
    Фатальная ошибка: Разрешенные размер памяти 134217728 байт исчерпаны (пытались выделить 30064771074 байт)

Любые идеи?

ответ

0

попытаться добавить это в ваш код:

<?php 
    ini_set("memory_limit","128M"); 
    $con = sybase_connect('server', 'user', 'pwd'); //connects fine 
    $q = sybase_query("select col=1", $con);  //error here, regardless of SQL 
    ?> 
+0

128M не помогло. Я просмотрел сообщение об ошибке (попытался выделить часть) и дал: ini_set ("memory_limit", "30G"); Это помогло, но почему в мире потребовалось бы 30G для запроса? –

+0

В вашем запросе должна быть проблема, попробуйте ее оптимизировать, чего вы пытаетесь достичь с помощью команды 'select col = 1'? следует ли сначала указать таблицу и базу данных? –

+0

'select col = 1' - это действительный sql, который должен возвращать 1 строку. Я просто использую его в качестве примера, который можно легко воспроизвести. Как я уже говорил в своем сообщении, я получаю такое же сообщение об ошибке независимо от используемого SQL. –