OleDbLiteral

  • Thread starter Thread starter Edward Diener
  • Start date Start date
E

Edward Diener

Does System.Data.OleDb.OleDbLiteral have a purpose or is it just there to
look good, as if it is used by something when it is not, or will be used in
something in the future ?
 
¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just there to
¤ look good, as if it is used by something when it is not, or will be used in
¤ something in the future ?
¤

I guess it depends upon how much you work with OLEDB interfaces. It's simply a constant enumerator
that maps to a corresponding enumerator in OLEDB. Similar to System.Data.OleDb.OleDbType.


Paul ~~~ (e-mail address removed)
Microsoft MVP (Visual Basic)
 
Paul Clement said:
On Mon, 27 Dec 2004 08:17:19 -0500, "Edward Diener"

¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just there
to
¤ look good, as if it is used by something when it is not, or will be used
in
¤ something in the future ?
¤

I guess it depends upon how much you work with OLEDB interfaces. It's
simply a constant enumerator
that maps to a corresponding enumerator in OLEDB. Similar to
System.Data.OleDb.OleDbType.

It does not appear that there is anything in ADO .NET which uses it since
there are no db properties in ADO .NET. Is it meant to be used by calling
ADO from ADO .NET code ? That would be a novel design idea.
 
¤ ¤ > On Mon, 27 Dec 2004 08:17:19 -0500, "Edward Diener"
¤ >
¤ > ¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just there
¤ > to
¤ > ¤ look good, as if it is used by something when it is not, or will be used
¤ > in
¤ > ¤ something in the future ?
¤ > ¤
¤ >
¤ > I guess it depends upon how much you work with OLEDB interfaces. It's
¤ > simply a constant enumerator
¤ > that maps to a corresponding enumerator in OLEDB. Similar to
¤ > System.Data.OleDb.OleDbType.
¤ >
¤
¤ It does not appear that there is anything in ADO .NET which uses it since
¤ there are no db properties in ADO .NET. Is it meant to be used by calling
¤ ADO from ADO .NET code ? That would be a novel design idea.
¤

I've not used it but it appears to be for interfacing with OLEDB, not ADO.


Paul ~~~ (e-mail address removed)
Microsoft MVP (Visual Basic)
 
Paul Clement said:
On Mon, 27 Dec 2004 11:10:10 -0500, "Edward Diener"

message
¤ ¤ > On Mon, 27 Dec 2004 08:17:19 -0500, "Edward Diener"
¤ >
¤ > ¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just
there
¤ > to
¤ > ¤ look good, as if it is used by something when it is not, or will be
used
¤ > in
¤ > ¤ something in the future ?
¤ > ¤
¤ >
¤ > I guess it depends upon how much you work with OLEDB interfaces. It's
¤ > simply a constant enumerator
¤ > that maps to a corresponding enumerator in OLEDB. Similar to
¤ > System.Data.OleDb.OleDbType.
¤ >
¤
¤ It does not appear that there is anything in ADO .NET which uses it
since
¤ there are no db properties in ADO .NET. Is it meant to be used by
calling
¤ ADO from ADO .NET code ? That would be a novel design idea.
¤

I've not used it but it appears to be for interfacing with OLEDB, not ADO.

How is one supposed to interface with OLEDB from within ADO .NET, even
considering one is using the System.Data.OleDb set of classes ? I do not see
anything in those classes which allows one to access OLEDB ActiveX objects
from the System.Data.OleDb classes of ADO .NET.
 
On Tue, 28 Dec 2004 07:05:13 -0500, "Edward Diener"


¤ > ¤ > ¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just
¤ > there
¤ > ¤ > to
¤ > ¤ > ¤ look good, as if it is used by something when it is not, or will be
¤ > used
¤ > ¤ > in
¤ > ¤ > ¤ something in the future ?
¤ > ¤ > ¤
¤ > ¤ >
¤ > ¤ > I guess it depends upon how much you work with OLEDB interfaces. It's
¤ > ¤ > simply a constant enumerator
¤ > ¤ > that maps to a corresponding enumerator in OLEDB. Similar to
¤ > ¤ > System.Data.OleDb.OleDbType.
¤ > ¤ >
¤ > ¤
¤ > ¤ It does not appear that there is anything in ADO .NET which uses it
¤ > since
¤ > ¤ there are no db properties in ADO .NET. Is it meant to be used by
¤ > calling
¤ > ¤ ADO from ADO .NET code ? That would be a novel design idea.
¤ > ¤
¤ >
¤ > I've not used it but it appears to be for interfacing with OLEDB, not ADO.
¤
¤ How is one supposed to interface with OLEDB from within ADO .NET, even
¤ considering one is using the System.Data.OleDb set of classes ? I do not see
¤ anything in those classes which allows one to access OLEDB ActiveX objects
¤ from the System.Data.OleDb classes of ADO .NET.
¤

I don't think that is what I'm saying. The System.Data.OleDb managed provider
interfaces with OLEDB using several classes. If you're looking for the specific
..NET mechanism I would have to say it's schema related, probably the
GetOleDbSchemaTable method.

You can retrieve schema information about any number of database objects, but I
don't know specifically which one(s) this enum corresponds to.

http://msdn.microsoft.com/library/d...ystemdataoledboledbschemaguidmemberstopic.asp

I'll see if I can do a bit more digging to give you a more specific answer.


Paul ~~~ (e-mail address removed)
Microsoft MVP (Visual Basic)
 
Paul Clement said:
On Tue, 28 Dec 2004 07:05:13 -0500, "Edward Diener"


¤ > ¤ > ¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just
¤ > there
¤ > ¤ > to
¤ > ¤ > ¤ look good, as if it is used by something when it is not, or will
be
¤ > used
¤ > ¤ > in
¤ > ¤ > ¤ something in the future ?
¤ > ¤ > ¤
¤ > ¤ >
¤ > ¤ > I guess it depends upon how much you work with OLEDB interfaces.
It's
¤ > ¤ > simply a constant enumerator
¤ > ¤ > that maps to a corresponding enumerator in OLEDB. Similar to
¤ > ¤ > System.Data.OleDb.OleDbType.
¤ > ¤ >
¤ > ¤
¤ > ¤ It does not appear that there is anything in ADO .NET which uses it
¤ > since
¤ > ¤ there are no db properties in ADO .NET. Is it meant to be used by
¤ > calling
¤ > ¤ ADO from ADO .NET code ? That would be a novel design idea.
¤ > ¤
¤ >
¤ > I've not used it but it appears to be for interfacing with OLEDB, not
ADO.
¤
¤ How is one supposed to interface with OLEDB from within ADO .NET, even
¤ considering one is using the System.Data.OleDb set of classes ? I do not
see
¤ anything in those classes which allows one to access OLEDB ActiveX
objects
¤ from the System.Data.OleDb classes of ADO .NET.
¤

I don't think that is what I'm saying. The System.Data.OleDb managed
provider
interfaces with OLEDB using several classes. If you're looking for the
specific
.NET mechanism I would have to say it's schema related, probably the
GetOleDbSchemaTable method.

Getting schema information gets information about a particular database but
I do not see how this interfaces with OleDbLiteral nor do I see how schema
information gets me the sort of RDBMS specific information to which
OleDbLiteral refers.
You can retrieve schema information about any number of database objects,
but I
don't know specifically which one(s) this enum corresponds to.

http://msdn.microsoft.com/library/d...ystemdataoledboledbschemaguidmemberstopic.asp

I'll see if I can do a bit more digging to give you a more specific
answer.

I am not looking for information about database objects but rather about the
RDBMS itself. This is what OleDbLiteral implies. If you can find any usage
for OleDbLiteral in order to obtain information about the RDBMS, it would be
appreciated, otherwise I will assume that it is in there just to look good.

I have brought up this general topic before in other posts. The gist of it
is that ADO .NET dropped the ability to generically get RDBMS specific
information which ADO, OLEDB, and ODBC had before it to varying extents. It
looks like Microsoft may have had in mind having this ability, from seeing
OleDbLiteral, but I see no functionality which uses it.
 
On Tue, 28 Dec 2004 13:22:26 -0500, "Edward Diener"

¤ > ¤ > ¤ > ¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it just
¤ > ¤ > there
¤ > ¤ > ¤ > to
¤ > ¤ > ¤ > ¤ look good, as if it is used by something when it is not, or will
¤ > be
¤ > ¤ > used
¤ > ¤ > ¤ > in
¤ > ¤ > ¤ > ¤ something in the future ?
¤ > ¤ > ¤ > ¤
¤ > ¤ > ¤ >
¤ > ¤ > ¤ > I guess it depends upon how much you work with OLEDB interfaces.
¤ > It's
¤ > ¤ > ¤ > simply a constant enumerator
¤ > ¤ > ¤ > that maps to a corresponding enumerator in OLEDB. Similar to
¤ > ¤ > ¤ > System.Data.OleDb.OleDbType.
¤ > ¤ > ¤ >
¤ > ¤ > ¤
¤ > ¤ > ¤ It does not appear that there is anything in ADO .NET which uses it
¤ > ¤ > since
¤ > ¤ > ¤ there are no db properties in ADO .NET. Is it meant to be used by
¤ > ¤ > calling
¤ > ¤ > ¤ ADO from ADO .NET code ? That would be a novel design idea.
¤ > ¤ > ¤
¤ > ¤ >
¤ > ¤ > I've not used it but it appears to be for interfacing with OLEDB, not
¤ > ADO.
¤ > ¤
¤ > ¤ How is one supposed to interface with OLEDB from within ADO .NET, even
¤ > ¤ considering one is using the System.Data.OleDb set of classes ? I do not
¤ > see
¤ > ¤ anything in those classes which allows one to access OLEDB ActiveX
¤ > objects
¤ > ¤ from the System.Data.OleDb classes of ADO .NET.
¤ > ¤
¤ >
¤ > I don't think that is what I'm saying. The System.Data.OleDb managed
¤ > provider
¤ > interfaces with OLEDB using several classes. If you're looking for the
¤ > specific
¤ > .NET mechanism I would have to say it's schema related, probably the
¤ > GetOleDbSchemaTable method.
¤
¤ Getting schema information gets information about a particular database but
¤ I do not see how this interfaces with OleDbLiteral nor do I see how schema
¤ information gets me the sort of RDBMS specific information to which
¤ OleDbLiteral refers.
¤

They are literal values returned when you query the database schema using
OleDbSchemaGuid.DbInfoLiterals:

http://msdn.microsoft.com/library/e...maguidclassdbinfoliteralstopic.asp?frame=true

The corresponding usage in ADO is OpenSchema with adSchemaDBInfoLiterals.

¤ I am not looking for information about database objects but rather about the
¤ RDBMS itself. This is what OleDbLiteral implies. If you can find any usage
¤ for OleDbLiteral in order to obtain information about the RDBMS, it would be
¤ appreciated, otherwise I will assume that it is in there just to look good.
¤

If you're looking for specific information about the RDBMS you may want to
specify what those are, and identify the methods that were used in ADO. I don't
understand the distinction you're making between the RDBMS and it's objects.


Paul ~~~ (e-mail address removed)
Microsoft MVP (Visual Basic)
 
Paul Clement said:
On Tue, 28 Dec 2004 13:22:26 -0500, "Edward Diener"

¤ > ¤ > ¤ > ¤ Does System.Data.OleDb.OleDbLiteral have a purpose or is it
just
¤ > ¤ > there
¤ > ¤ > ¤ > to
¤ > ¤ > ¤ > ¤ look good, as if it is used by something when it is not, or
will
¤ > be
¤ > ¤ > used
¤ > ¤ > ¤ > in
¤ > ¤ > ¤ > ¤ something in the future ?
¤ > ¤ > ¤ > ¤
¤ > ¤ > ¤ >
¤ > ¤ > ¤ > I guess it depends upon how much you work with OLEDB
interfaces.
¤ > It's
¤ > ¤ > ¤ > simply a constant enumerator
¤ > ¤ > ¤ > that maps to a corresponding enumerator in OLEDB. Similar to
¤ > ¤ > ¤ > System.Data.OleDb.OleDbType.
¤ > ¤ > ¤ >
¤ > ¤ > ¤
¤ > ¤ > ¤ It does not appear that there is anything in ADO .NET which uses
it
¤ > ¤ > since
¤ > ¤ > ¤ there are no db properties in ADO .NET. Is it meant to be used
by
¤ > ¤ > calling
¤ > ¤ > ¤ ADO from ADO .NET code ? That would be a novel design idea.
¤ > ¤ > ¤
¤ > ¤ >
¤ > ¤ > I've not used it but it appears to be for interfacing with OLEDB,
not
¤ > ADO.
¤ > ¤
¤ > ¤ How is one supposed to interface with OLEDB from within ADO .NET,
even
¤ > ¤ considering one is using the System.Data.OleDb set of classes ? I do
not
¤ > see
¤ > ¤ anything in those classes which allows one to access OLEDB ActiveX
¤ > objects
¤ > ¤ from the System.Data.OleDb classes of ADO .NET.
¤ > ¤
¤ >
¤ > I don't think that is what I'm saying. The System.Data.OleDb managed
¤ > provider
¤ > interfaces with OLEDB using several classes. If you're looking for the
¤ > specific
¤ > .NET mechanism I would have to say it's schema related, probably the
¤ > GetOleDbSchemaTable method.
¤
¤ Getting schema information gets information about a particular database
but
¤ I do not see how this interfaces with OleDbLiteral nor do I see how
schema
¤ information gets me the sort of RDBMS specific information to which
¤ OleDbLiteral refers.
¤

They are literal values returned when you query the database schema using
OleDbSchemaGuid.DbInfoLiterals:

http://msdn.microsoft.com/library/e...maguidclassdbinfoliteralstopic.asp?frame=true

OK, I see where the literal values are returned as a table if one uses
'DataTable dt = conn.GetOleDbSchemaTable(OleDbSchemaGuid.DbInfoLiterals,new
object[x])' etc.. What the columns are in this returned table I do not know
but I can experiment to find out. This is a good way of getting some RDBMS
specific information. I guess OleDbLiteral can be used in the situation to
specify a restriction for a column value once I can figure out what columns
are being returned..
The corresponding usage in ADO is OpenSchema with adSchemaDBInfoLiterals.

¤ I am not looking for information about database objects but rather about
the
¤ RDBMS itself. This is what OleDbLiteral implies. If you can find any
usage
¤ for OleDbLiteral in order to obtain information about the RDBMS, it
would be
¤ appreciated, otherwise I will assume that it is in there just to look
good.
¤

If you're looking for specific information about the RDBMS you may want to
specify what those are, and identify the methods that were used in ADO. I
don't
understand the distinction you're making between the RDBMS and it's
objects.

If RDBMS specific information, rather than database specific information,
can be found out by querying schema tables using GetOleDbSchemaTable then I
am fine, and will experiment with that. The distinction I make is that
normally one thinks of a database as having specific information in its
tables, about which one can query using schema access, while an RDBMS may
have specific rules regarding its syntax, transaction support, connection
support etc. etc. which one does not think of as being specific to a
connection, database, and its tables. However if querying for schema
information can also returns information in table format regarding RDBMS
specific information rather than just a particular connection's database
specific information, I will investigate that.
 
Back
Top