Tôi đang tự vỗ tay.
Tôi thừa nhận, đó là một giải pháp ác mộng nhưng nó sẽ hoàn thành công việc. Giải pháp là đặt:
Declare @Response as table(Json_Table nvarchar(max))
Bằng cách này, tôi đã tạo một bảng với kiểu dữ liệu có nvarchar(max)
và bây giờ có, nó có thể chứa 65.535 ký tự và cho đến 2GB dữ liệu.
Declare @Object as Int;
DECLARE @hr int
Declare @Response as table(Json_Table nvarchar(max))
Exec @hr=sp_OACreate 'MSXML2.ServerXMLHTTP.6.0', @Object OUT;
Exec @hr=sp_OAMethod @Object, 'open', NULL, 'get',
'http://overpass-api.de/api/interpreter?data=[out:json];area[name="Auckland"]->.a;(node(area.a)[amenity=cinema];way(area.a)[amenity=cinema];rel(area.a)[amenity=cinema];);out;', --Your Web Service Url (invoked)
'false'
Exec @hr=sp_OAMethod @Object, 'send'
Exec @hr=sp_OAMethod @Object, 'responseText', @Response OUTPUT
INSERT into @Response (Json_Table) exec sp_OAGetProperty @Object, 'responseText'
select * from @Response
EXEC sp_OADestroy @Object
Hãy đăng nếu bạn tìm thấy một giải pháp tốt hơn, nó sẽ được đánh giá cao.