OleDbConnection.GetOleDbSchemaTable(Guid, Object[]) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
应用了指定的限制之后,按照 GUID 的指示从数据源返回架构信息。
public:
System::Data::DataTable ^ GetOleDbSchemaTable(Guid schema, cli::array <System::Object ^> ^ restrictions);
public System.Data.DataTable GetOleDbSchemaTable (Guid schema, object[] restrictions);
public System.Data.DataTable? GetOleDbSchemaTable (Guid schema, object?[]? restrictions);
member this.GetOleDbSchemaTable : Guid * obj[] -> System.Data.DataTable
Public Function GetOleDbSchemaTable (schema As Guid, restrictions As Object()) As DataTable
参数
- schema
- Guid
OleDbSchemaGuid 的值之一,它指定要返回的架构表。
返回
一个包含所请求的架构信息的 DataTable。
例外
指定的限制集无效。
OLE DB 提供程序不支持指定的架构行集合。
- 或 -
schema
参数包含 DbInfoLiterals 的值,restrictions
参数包含一条或多条限制。
示例
下面的示例返回数据库中的表列表。
static DataTable GetSchemaTable(string connectionString)
{
using (OleDbConnection connection = new
OleDbConnection(connectionString))
{
connection.Open();
DataTable schemaTable = connection.GetOleDbSchemaTable(
OleDbSchemaGuid.Tables,
new object[] { null, null, null, "TABLE" });
return schemaTable;
}
}
Public Function GetSchemaTable(ByVal connectionString As String) _
As DataTable
Using connection As New OleDbConnection(connectionString)
connection.Open()
Dim schemaTable As DataTable = _
connection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, _
New Object() {Nothing, Nothing, Nothing, "TABLE"})
Return schemaTable
End Using
End Function
注解
架构表以 DataTable 与参数指定的 schema
OLE DB 架构行集相同的格式返回。 restrictions
使用参数通过指定表名称、类型、所有者或架构) 的限制,筛选 (中DataTable要返回的行。 在数组中传递值时,请为不包含值的数组元素包含空字符串或 null。 如果将空数组传递给 restrictions
,则默认顺序返回每个表 (每个表) 的所有行。 数组中的值对应于源表中列的顺序和 DataTable。 限制数组中的每个元素与架构行集中相应列的内容进行比较。 例如,限制数组中的第一个元素与行集中的第一列进行比较。 如果限制元素不为 null,则只会将与限制值完全匹配的架构行集中的行添加到生成的 DataTable行。
该方法 OleDbConnection 使用标准公共语言运行时转换规则调用基础 OLE DB IDBSchemaRowset::GetRowset 方法。 有关详细信息,请参阅 COM 数据类型。
You can retrieve information about literals by using DbInfoLiterals. 这提供了等效于使用常量调用 OLE DB IDBInfo::GetLiteralInfo 接口或 ADO Connection.OpenSchema 方法 adSchemaDBInfoLiterals
的信息。