我有一个SQL Server数据库,其中包含客户记录和最重要的邮政编码,我想在地图上显示。
探索这个论坛我发现了一个很好的文章,描述了如何多个邮政编码可以通过谷歌地图API发送,然后在我自己的网页上显示。这篇文章是:"按英国邮政编码向谷歌地图添加多个pin"。
这不能满足我的目的,因为我希望将特定SQL查询中的邮政编码注入到jscript中,而不是手动将邮政编码键入代码。我所讨论的区域如下面的原始代码摘录所示:
var postcodes = [
'SL59JH',
'LU13TQ',
'SR29TD',
'DA75BQ',
'EC1V9B'
];
到目前为止,我已经提出了这个解决方案,以获得所需的邮政编码数据的SQL和输出到一个文本文件使用bcp命令:
bcp "SELECT CHAR(39) + Clients_Postcode + CHAR(39) + ',' FROM Clients WHERE Clients_Type = 'retail' OR Clients_Type = 'hospitality'" queryout C:postcodes.txt -c -S server01 -d AllClients -T
请注意我在生成的文本文件中实现的格式:SQL select语句将撇号和逗号字符放入数据中,以尝试匹配取自上述文章的原始代码中给出的邮政编码格式。
现在,我希望在上面突出显示的jscript中使用文本文件的内容,以便生成的google地图将显示从bcp命令生成的文本文件中提取的所有邮政编码。
这是我想象的标记,但不知道是否有可能实现我想要的,我也不知道所需的语法。
var postcodes = [
' ' //postcodes from text file
];
我是初学者,非常感谢比我更有经验/能力的人的帮助;
我相信我已经找到了满足我需要的方法。我宁愿不使用PHP,但似乎唯一的方法是使用"file_get_contents()"PHP命令。
显然,我不得不重命名网页文件扩展名*.php,不得不安装PHP支持IIS,但这里是我要求的工作代码,虽然不是我想要的JScript或c#版本,但似乎没有一个没有过度复杂的事情:
var postcodes = [<?php $data1 = file_get_contents("postcodes.txt"); {echo $data1;} ?>];
文本文件中列出的邮政编码然后被有效地放置在谷歌地图上。不幸的是,免费的Google Maps API一次只允许在地图上显示最多8个信标。