Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
返回此 ULConnection 对象的数据源模式信息,并且如果已指定,则使用指定的模式名称字符串和指定的限制值字符串数组。
Public Overrides Function GetSchema( ByVal collection As String, ByVal restrictions As String() ) As DataTable
public override DataTable GetSchema( string collection, string[] restrictions )
collection 元数据集合的名称。如果未提供名称,则使用 MetaDataCollections。
restrictions 所请求模式的一组限制值。
包含模式信息的 DataTable 对象。
此方法用于查询数据库以获取各种元数据。每种类型的元数据均被赋予了一个集合名称,必须传递该名称方可接收该数据。缺省集合名称为 MetaDataCollections。
通过不使用任何参数或使用模式集合名称 MetaDataCollections 调用 GetSchema 方法,可以查询 .NET 数据提供程序以确定所支持的模式集合列表。这会返回一个 DataTable,其中含有所支持模式集合的列表 (CollectionName)、每个集合所支持的限制数 (NumberOfRestrictions),以及它们所使用的标识符部分的个数 (NumberOfIdentifierParts)。
这些集合名称也可作为只读属性在 ULMetaDataCollectionNames 类中使用。
可通过在调用 GetSchema 方法时指定限制数组来过滤返回的结果。
通过以下调用可以查询每个集合可用的限制:
GetSchema( "Restrictions" )
如果集合需要四个限制,则限制参数必须为 NULL 或具有四个值的字符串。
要根据特定限制进行过滤,请将用以过滤的字符串置于其在数组中的适当位置,并将任何未使用的位置均保留为 NULL。例如,Tables 集合具有三个限制:Table、TableType、SyncType。
要过滤 Table 集合:
GetSchema( "Tables", new string[ ] { "my_table", NULL, NULL } ) 返回有关名为 my_table 的所有表的信息。
GetSchema( "Tables", new string[ ] { NULL, "User", NULL } ) 返回有关所有用户表的信息。