Update of .NET Provider for OLEDB. Support of schemas implemented.

We continue to develop our .NET Provider for OLEDB. In the new build (#1434), we have implemented the methods to obtain database metadata:

  • OleDbConnection.GetOleDbSchemaTable
  • OleDbConnection.GetSchema

GetOleDbSchemaTable

Supported schemas:

  • SchemaGuids
  • DbInfoKeywords
  • DbInfoLiterals
  • All schemas of the OLEDB Provider

Distinctions compared to standard OLEDB.NET Provider:

  • The SchemaGuids schema describes all schemas including SchemaGuids, DbInfoKeywords and DbInfoLiterals.
  • The SchemaGuids schema supports restrictions for the Schema column.

GetSchema

Supported schemas:

  • MetaDataCollections
  • Restrictions
  • DataTypes
  • ReservedWords
  • DataSourceInformation
  • CharacterSets
  • Collations
  • Tables
  • Views
  • Columns
  • Procedures
  • ProcedureParameters
  • ProcedureColumns
  • Indexes

Distinctions compared to standard OLEDB.NET Provider:

  • The MetaDataCollections schema supports restrictions for the column CollectionName.
  • The Restrictions schema supports restrictions for the columns CollectionName and RestrictionName.
  • More accurate population of the DataSourceInformation schema.
  • More accurate population of the Restrictions schema.

Implementation peculiarities

  • Caching of data from its own schemas (SchemaGuids, DbInfoKeywords, DbInfoLiterals, …).
  • Coherence of information from metadata schemas with the descriptions of the resulting rowset columns and command parameters (ensured by IBProvider).
  • Different algorithms of metadata loading for Interbase and Firebird. Including – our provider takes into account the version of the server and the version of database ODS (ensured by IBProvider).
  • Caching of OLEDB metadata schemas is carried out on the IBProvider level (see a property «schema_cache»).

Other changes

  • The OleDbSchemaGuid class added with the lists of known OLEDB schema identifiers.
  • The OleDbSchemaRestriction class added with the lists of restriction indexes for known OLEDB schemas.
  • The OleDbLiteral class added.
  • The OleDbMetaDataCollectionNames class added.
  • The number of tests and debug structures ensuring the correct work of components increased.

New examples

If you are interested in working with stored procedures grouped into PACKAGE, please take a look at the new example for our .NET Provider:

  • Creation and working with PACKAGE (C#, FB3)
  • 1 Star2 Stars3 Stars4 Stars5 Stars (No Ratings Yet)
    Loading...

    Leave a Reply