我想知道是否有人对使用Google Map的API验证来自SQL Server数据库的地址数据有任何见解。
假设我有一张这样的表:
Declare @MyTable as Table
(
row_index int identity (1,1),
name varchar(100) null,
address varchar(100) null,
city varchar(100) null,
state varchar(2) null,
zip int null,
isvalid bit not null
)
Insert @MyTable Values ('Microsoft', '15010 NE 36th Street', 'Redmond', 'WA', 98052, 0)
Insert @MyTable Values ('Fake Address','123 Blahblah Ln', 'Fresno', 'CA', 93650, 0)
Insert @MyTable Values ('Google', '1600 Amphitheatre Parkway', 'Mountain View', 'CA', 94043, 0)
Select * from @Mytable
有什么方法可以直接从SQL Server查询Google以确定地址,城市,州和邮政编码是否为有效地址,然后将isvalid
位设置为1?
我看到如何用JavaScript做到这一点,但我希望有一个纯粹的T-SQL驱动的解决方案,因为我需要安排一个工作来识别坏工作并删除它们。
答案 0 :(得分:2)
不是直接来自SQL,没有。
您可以编写一个包含使用API的C#脚本的SSIS包 - 这已经在这里进行了实验(虽然以不同的方式满足您的需求,但您可以得到这个想法):
http://www.sqlmusings.com/2011/03/25/geocode-locations-using-google-maps-v3-api-and-ssis/
如果您将其关闭,则可以使用执行所需验证的SQL Server代理计划任务。