Microsoft KB Archive/312794

= INFO: OLE DB .NET Managed Provider Does Not Support Some OLE DB Providers in Visual C# .NET =

Article ID: 312794

Article Last Modified on 2/22/2007

-

APPLIES TO


 * Microsoft .NET Framework 1.1 Service Pack 1
 * Microsoft ADO.NET 1.1
 * Microsoft Visual C# .NET 2002 Standard Edition
 * Microsoft Visual C# .NET 2003 Standard Edition

-



This article was previously published under Q312794



For a Microsoft Visual Basic .NET version of this article, see 310448.

This article refers to the following Microsoft .NET Framework Class Library namespace:
 * System.Data.OleDb



SUMMARY
The OLE DB .NET managed provider does not support all OLE DB providers.



MORE INFORMATION
The OLE DB .NET managed provider does not support the Microsoft OLE DB Provider for ODBC (MSDASQL). You must use the ODBC .NET managed provider instead. For additional information about the ODBC .NET managed provider, click the article number below to view the article in the Microsoft Knowledge Base:

310988 HOW TO: Use the ODBC .NET Managed Provider in Visual C# .NET and Connection Strings

The OLE DB managed provider requires that the OLE DB provider support a command syntax to select and update data. Most simple OLE DB providers meet this requirement. Because the Microsoft OLE DB Provider for Exchange only supports updates through cursors, the OLE DB managed provider does not support the OLE DB Provider for Exchange.

The OLE DB (OleDb) and SQL Server (SqlClient) managed providers require multi-statement batch support to retrieve any changes that you make after updates or inserts (for example, if you retrieve the value of an AutoNumber or Identity column). Because Microsoft Jet does not support multi-statement batches, you must include additional code to handle this case.

The following code sample demonstrates how to use the OLE DB managed provider to connect to a Microsoft SQL Server database.

NOTE: You must ensure that the System.Data.OleDb namespace is declared in the &quot;General Declarations&quot; section first. OleDbConnection cn = new OleDbConnection(&quot;Provider=SQLOLEDB.1;Data Source=mySQLServer&quot;);

cn.Open;

