MSSQL 2014: Could not create a statement object using OLE DB provider

Microsoft.SQLServer.2014.Could_not_create_a_statement_object_using_OLE_DB_provider_1_5_Rule (Rule)

The rule triggers an alert when SQL Server fails to create a statement object with the OLE DB provider connected to a linked server.

Knowledge Base article:

Summary

SQL Server could not create a statement object with the OLE DB provider connected to a linked server. The Windows application log will identify the name of the OLE DB provider and the instance of SQL Server.

Resolutions

Locate event ID 7305 in the Windows application log to identify the OLE DB provider name. Check the SQL statement used in the query. Run the query again. If this error repeats, contact the OLE DB application vendor.

Overrideable Parameters

Name

Description

Default Value

Enabled

 

Yes

Generates Alerts

 

Yes

Priority

 

1

Severity

 

1

Element properties:

TargetMicrosoft.SQLServer.2014.DBEngine
CategoryEventCollection
EnabledTrue
Event_ID7305
Event Source$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$
Alert GenerateTrue
Alert SeverityWarning
Alert PriorityNormal
RemotableTrue
Alert Message
MSSQL 2014: Could not create a statement object using OLE DB provider
{0}
Event LogApplication
CommentMom2014ID='{5858D9E9-D97F-4B2C-B928-4EB127EA9487}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}

Member Modules:

ID Module Type TypeId RunAs 
_F6DA1507_12AF_11D3_AB21_00A0C98620CE_ DataSource Microsoft.Windows.EventProvider Default
GenerateAlert WriteAction System.Health.GenerateAlert Default

Source Code:

<Rule ID="Microsoft.SQLServer.2014.Could_not_create_a_statement_object_using_OLE_DB_provider_1_5_Rule" Target="SQL2014Core!Microsoft.SQLServer.2014.DBEngine" Enabled="true" Remotable="true" ConfirmDelivery="true" Comment="Mom2014ID='{5858D9E9-D97F-4B2C-B928-4EB127EA9487}';MOM2014GroupID={467ECC75-C5DA-42BD-955C-A73BBB51AF74}">
<Category>EventCollection</Category>
<DataSources>
<DataSource ID="_F6DA1507_12AF_11D3_AB21_00A0C98620CE_" Comment="{F6DA1507-12AF-11D3-AB21-00A0C98620CE}" TypeID="Windows!Microsoft.Windows.EventProvider">
<ComputerName>$Target/Host/Property[Type="Windows!Microsoft.Windows.Computer"]/NetworkName$</ComputerName>
<LogName>Application</LogName>
<Expression>
<And>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>PublisherName</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>$Target/Property[Type="SQL2014Core!Microsoft.SQLServer.2014.DBEngine"]/ServiceName$</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
<Expression>
<SimpleExpression>
<ValueExpression>
<XPathQuery>EventDisplayNumber</XPathQuery>
</ValueExpression>
<Operator>Equal</Operator>
<ValueExpression>
<Value>7305</Value>
</ValueExpression>
</SimpleExpression>
</Expression>
</And>
</Expression>
</DataSource>
</DataSources>
<WriteActions>
<WriteAction ID="GenerateAlert" TypeID="SystemHealth!System.Health.GenerateAlert">
<Priority>1</Priority>
<Severity>1</Severity>
<AlertMessageId>$MPElement[Name="Microsoft.SQLServer.2014.Could_not_create_a_statement_object_using_OLE_DB_provider_1_5_Rule.AlertMessage"]$</AlertMessageId>
<AlertParameters>
<AlertParameter1>$Data/EventDescription$</AlertParameter1>
</AlertParameters>
<Suppression>
<SuppressionValue/>
</Suppression>
</WriteAction>
</WriteActions>
</Rule>