Rather than using IDBSchemaRowset::GetRowset COM interface via interop, I use OleDbConnection.GetOleDbSchemaTable. It's built-in managed code, pretty easy to do, and helps most of the work I need.
-----Original Message----- From: dotnet discussion [mailto:[EMAIL PROTECTED]] On Behalf Of Beauchemin, Bob Sent: Monday, May 06, 2002 8:50 AM To: [EMAIL PROTECTED] Subject: Re: [DOTNET] ADOX in .NET Yes, ADOX is most useful with Access and the Jet provider. It is, for the most part, an encapsulation of OLE DB's ITableDefinition and IIndexDefinition with some additional features. You could argue that, for these functions (defining tables and indexes) SQL DDL is better. Thus, most OLE DB providers over relational databases (vs XBase databases) only exposed a subset of the total functionality of ADOX. To read database information, OLE DB defined IDBSchemaRowset::GetRowset, that could give you a superset of the SQL-92 information schema. The information that schema rowsets are supposed to return is defined in the OLE DB spec. Implementation of schema rowsets was completely optional for provider writers. IDBSchemaRowset::GetRowset *was* carried forward in .NET as OleDbConnection.GetOleDbSchemaTable. After looking at your google reference, Malcolm is speaking of FillSchema and GetSchemaTable which return information about a SQL resultset (which can be a join) rather than database table information. The info is fairly close, though. Dragging a stored procedure into VS queries the database for metadata using information_schema, system tables, or the schema rowset for Procedure_Parameters. Cheers, Bob Beauchemin [EMAIL PROTECTED] -----Original Message----- From: Alireza Kheyrollahi [mailto:[EMAIL PROTECTED]] Sent: Sunday, May 05, 2002 4:23 PM To: [EMAIL PROTECTED] Subject: Re: [DOTNET] ADOX in .NET Dear Bob, Thank you very much. It saved me a great deal of time. And I also found this link (actually one of my friends found it): http://groups.google.com/groups?q=adox+.net&hl=en&selm=XhvkL6NIBHA.185%4 0cppssbbsa01.microsoft.com&rnum=2 which was very useful. Interesting is that in ADOX I was having problem getting properties of a column while using SQLOLEDB but everything was just fine with JET. Now in .NET evrything is working fine. A. ----- Original Message ----- From: "Beauchemin, Bob" <[EMAIL PROTECTED]> To: <[EMAIL PROTECTED]> Sent: Sunday, May 05, 2002 10:53 PM Subject: Re: [DOTNET] ADOX in .NET There is no replacement yet for ADOX. You can use it through COM interop. Do you need to access (read) tables metadata or *define* tables, indexes, etc? To read metadata on a DBMS independent (OleDbConnection.GetOleDbSchemaTable) or SQL Server-specific (but standard) "select * from information_schema.xxx" basis is certainly possible. I'm almost certain (not knowing exactly what you are doing) that using DataSet doesn't get you what you want. Bob Beauchemin [EMAIL PROTECTED] -----Original Message----- From: Alireza Kheyrollahi [mailto:[EMAIL PROTECTED]] Sent: Sunday, May 05, 2002 2:17 PM To: [EMAIL PROTECTED] Subject: [DOTNET] ADOX in .NET ----- Original Message ----- From: Alireza Kheyrollahi To: dotnet discussion Sent: Sunday, May 05, 2002 10:03 PM Subject: ADOX in .NET Hi all, Does anyone know what has replaced ADOX in .NET? In my new project I need access to tables metadata (like field names, types, foreign keys and ....) Does DataSet class impements those functionalities? Thanks Ali You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com. You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com. You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com. You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com. You can read messages from the DOTNET archive, unsubscribe from DOTNET, or subscribe to other DevelopMentor lists at http://discuss.develop.com.