我的查询:
$query_total = mssql_query("SELECT count(*) FROM table_name",$link);
以上查询提供错误日志:
PHP Warning: mssql_query() [<a href='function.mssql-query'>function.mssql-query</a>]: Query failed in ...
上述查询预计大约10 cr的数量。
当我使用限制为100的相同查询时,即:
$query_total = mssql_query("SELECT top 100 * FROM table_name",$link);
以上查询成功运行,给我计算。
我试过了:
mssql_get_last_message()
,但我没有捕获任何日志。set_time_limit(0);
ini_set("max_execution_time", 0);
ini_set("memory_limit","16M");
更新1:
甚至试过这个,
ini_set ( 'mssql.textlimit' , '65536' );
ini_set ( 'mssql.textsize' , '65536' );
仍然无法正常工作。
请帮助我如何执行繁重的查询。
答案 0 :(得分:4)
我想我得到了解决方案:
我将内存限制增加到512M,将sql时间增加到10分钟,然后我可以得到大约100毫安行的计数。
ini_set('memory_limit', '512M');
ini_set('mssql.timeout', 60 * 10); // 10 min
答案 1 :(得分:1)
我不知道10cr是多少,真的,但它似乎在sql server中失败了。也许内存不足?如果你尝试计数(id)怎么办? 您可能需要以不同的方式配置您的sql server以使其正常工作,请注意。