Limit to query length in Fusion Tables?

Deadly 提交于 2019-12-17 13:50:03

问题


I am attempting to fetch data from a Fusion Table, using an "IN" operator. When I am looking in a very large string (2000+ zip codes), nothing is returned. When I look in a short string (two zip codes), it works correctly.

For example, this works:

var zip = "76364,76373";
layer = new google.maps.FusionTablesLayer(tableid);
layer.setQuery("SELECT 'geometry' FROM " + tableid + " WHERE ZIP IN("+zip+")");
layer.setMap(map);

But this does not:

var zips = <?php echo $zips; ?>; //$zips is a JSON array
zips = zips.join();
layer = new google.maps.FusionTablesLayer(tableid);
layer.setQuery("SELECT 'geometry' FROM " + tableid + " WHERE ZIP IN("+zips+")");
layer.setMap(map);

I get a 400 error in Firebug.

I have not been able to find a limit in Google documentation.


回答1:


It sounds like you are hitting the maximum URL length (2048 characters).

The query sent to the Fusion Tables Layer is added to the URL of each tile image. If the query is too long, then the URL of each tile image exceeds the URL limit, and the image will not be displayed.



来源:https://stackoverflow.com/questions/9199378/limit-to-query-length-in-fusion-tables

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!