用php从sql server获取大量数据

时间:2012-06-06 16:08:35

标签: php sql sql-server-2008

我有200个thounsand条目的表调用Access,我需要获取所有数据并将其显示在地图上。 数据库的架构是:

long    |  lat    |  service
12.00   | 34.33   |    3
133.32  | 32.4213 |    5
-58.3   | -3.3233 |    10

如果我尝试查询:

SELECT long, lat, service FROM Access;

在SQL SERVER控制台上我得到了所有数据,效果很好,但如果我尝试使用这个PHP代码:

$result = mssql_query($query) or die('Query Failed ' . mssql_error());

我一无所获。没有错误也没有数据。 我增加了php.ini的内存限制,并将其设置为1024M,但我得到相同的输出,没有错误,也没有数据。

有什么方法可以从php数组中的数据库中获取数千个条目?我做什么不好?

感谢您的帮助。

1 个答案:

答案 0 :(得分:1)

mssql_query()不返回任何数据,它会在成功时返回结果资源。查看文档:{​​{3}}
您还必须使用其他功能(例如http://php.net/mssql_query)来检索所有数据。

mssql_connect(...); // put valid server/login/password here
$result = mssql_query($query) or die('Query Failed ' . mssql_error());
while($r = mssql_fetch_assoc($result))
{
    // use $r['long'], $r['lat']...to access the data of the fetched record
}

while()循环是获取所有记录所必需的,每次调用mssql_fetch_assoc()都需要一条记录。