Что делать когда возможностей и функционала SQL сервера не хватает ?
Представим что нужно получить размер свободного пространства на всех дисках.
Тогда на помощь придет OLE автоматизация, которая является одной из самых полезных возможностей SQL сервера, доступная еще с 2005 версии.
Как же эти воспользоваться, для начала нужно включить эту опцию на SQL сервере
--включить интеграцию с OLE
sp_configure 'show advanced options', 1;
GO
RECONFIGURE;
GO
sp_configure 'Ole Automation Procedures', 1;
GO
RECONFIGURE;
GO
Затем воспользоваться следующими процедурами:
При обращении к объекту OLE-автоматизации из Transact-SQL сперва необходимо вызвать системную хранимую процедуру sp_OACreate,
которая создает экземпляр объекта в адресном пространстве экземпляра компонента Компонент Database Engine.
После создания экземпляра объекта можно вызывать следующие хранимые процедуры для работы со свойствами,
методами и получением сведений об ошибках, связанных с созданным объектом.
sp_OAGetProperty - возвращает значение свойства, sp_OAGetProperty - устанавливает значение свойства, sp_OAMethod - вызывает метод,
sp_OAGetErrorInfo - возвращает сведения о последней возникшей ошибке
