Ваш код геокодировки, скорее всего, подключится к сервису геокодировки, и это исключает интеграцию SQL CLR. С технической точки зрения, доступ к внешним ресурсам, особенно веб-службам, из среды SQL CLR - это самая большая ошибка, которую вы можете совершить. В течение нескольких дней ваш сервер будет заморожен из-за перегрузки потока CLR, гарантировано.
Лучший подход - использовать стратегию ETL. Координаты сбрасываются в промежуточную таблицу, вы запускаете процесс ETL и преобразуете все координаты в геокоды и записываете результаты в таблицы успеха и ошибок. Подход ETL обычно учитывает пакетирование, прерывание и возобновление и так далее. ETL может быть заданием SQL, запускающим приложение, пакетом служб SSIS, есть много способов сделать это, важный бит - это разделение работы на промежуточные таблицы и предоставление семантики приостановки / возобновления. Код dll, который у вас есть сейчас (который я предполагаю, является прокси-кодом клиента веб-службы геокодирования), вероятно, составляет 0,001% от вашего проекта.
То, должен ли процесс быть представлен как веб-сервис, полностью ортогонально процессу ETL и должно управляться вашим клиентом, связывающим требования и технологии. Другими словами, если клиентский код предпочитает выгружать координаты с помощью WS, сделайте это, если вы учитываете большие наборы данных и пока вы предоставляете несвязанную, асинхронную и помещенную в очередь семантику для результатов.