में संग्रहीत प्रक्रिया 'sp_OACreate' नहीं मिल सका जब मैं sp_OACreate
SQL एज़ूर डेटाबेस में संग्रहित प्रक्रिया निष्पादित करने का प्रयास करता हूं। मुझे निम्न त्रुटि मिल रही है:त्रुटि प्राप्त हो रही है "एसक्यूएल एज़ूर
Could not find stored procedure 'sp_OACreate'
SQL Azure में।
क्या कोई मुझे बता सकता है कि ओएलई स्वचालन विधियों को कैसे कार्यान्वित करें जैसे sp_OACreate
SQL Azure में।
किसी भी मदद की अत्यधिक सराहना की जाएगी।
धन्यवाद।
कॉपी किया गया & ऑप्स से प्रारूपित (एक संपादन किया जाना चाहिए था जो) का जवाब:
मैं गूगल मानचित्र सेवाओं हिट करने के लिए किसी भी पते के सह orinates (अक्षांश & देशांतर) प्राप्त करने के लिए कोशिश कर रहा हूँ। मैं एसक्यूएल प्रश्नों के नीचे निष्पादित कर रहा हूँ। एसक्यूएल सर्वर 2005 में अपनी काम कर ठीक लेकिन SQL Azure 2008.Plz में अपनी दे त्रुटि नीचे देखें :-(कृपया इस के लिए कुछ वैकल्पिक सुझाव है)
DECLARE @Sample TABLE
(
RowID INT IDENTITY(1, 1) PRIMARY KEY CLUSTERED,
Postal VARCHAR(50) NOT NULL,
ZipCode VARCHAR(50) NOT NULL,
City VARCHAR(50) NOT NULL,
Country VARCHAR(50) NOT NULL,
Status SMALLINT,
Accuracy TINYINT,
Lat DECIMAL(9, 6),
Lon DECIMAL(9, 6),
CreDate DATETIME
)
INSERT @Sample
SELECT 'One Microsoft Way', '98052', 'Redmond, WA', 'USA',null,1,0,0,getdate() UNION ALL
SELECT '170 W. Tasman Dr.', '95134', 'San Jose, CA', 'USA',null,1,0,0,getdate() UNION ALL
SELECT '500 Oracle Parkway', '94065', 'Redwood Shores, CA', 'USA',null,1,0,0,getdate()
select * from @Sample
-- Initialize
DECLARE @url VARCHAR(300),
@win INT,
@hr INT,
@Text VARCHAR(8000),
@RowID int,
@Status smallint,
@Accuracy tinyint,
@Lon decimal(9, 6),
@Lat decimal(9, 6)
SELECT @RowID = MIN(RowID) FROM @Sample WHERE Status IS NULL
WHILE @RowID IS NOT NULL
BEGIN
SELECT @url = 'q=' + Postal + '+' + ZipCode + '+' + City + '+' + Country
FROM @Sample
WHERE RowID = @RowID
SET @url = 'http://maps.google.com/maps/geo?' + @url
SET @url = @url + '&output=csv&key={your google api key here}'
EXEC @hr = sp_OACreate 'WinHttp.WinHttpRequest.5.1', @win OUT
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr = sp_OAMethod @win, 'Open', NULL, 'GET', @url, 'false'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr = sp_OAMethod @win, 'Send'
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr = sp_OAGetProperty @win, 'ResponseText', @Text OUT
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
EXEC @hr = sp_OADestroy @win
IF @hr <> 0 EXEC sp_OAGetErrorInfo @win
SET @Text = REPLACE(REPLACE(@Text, '.', '#'), ',', '.')
SELECT @Status = PARSENAME(@Text, 4),
@Accuracy = PARSENAME(@Text, 3),
@Lat = REPLACE(PARSENAME(@Text, 2), '#', '.'),
@Lon = REPLACE(PARSENAME(@Text, 1), '#', '.')
UPDATE @Sample
SET Accuracy = @Accuracy,
Lat = @Lat,
Lon = @Lon,
Status = @Status,
CreDate = GETDATE()
WHERE RowID = @RowID
WAITFOR DELAY '00:00:00.010'
SELECT @RowID = MIN(RowID)
FROM @Sample
WHERE Status IS NULL
END
SELECT * FROM @Sample
--If Above not executing then first execute below
--sp_configure 'show advanced options', 1;
--GO RECONFIGURE;
--
--GO
--
--sp_configure 'Ole Automation Procedures', 1; GO RECONFIGURE;
--
--GO
शायद आप वर्णन कर सकते हैं कि आप यहां क्या हासिल करने की कोशिश कर रहे थे - आप स्पष्ट रूप से एक COM घटक का उपयोग करने की कोशिश कर रहे हैं - क्या यह एक आम घटक है जिसे हम विकल्पों का सुझाव दे सकते हैं? –