AdomdDataReader.GetSchemaTable 方法
傳回 DataTable,描述 AdomdDataReader 的資料行中繼資料。
命名空間: Microsoft.AnalysisServices.AdomdServer
組件: msmgdsrv (在 msmgdsrv.dll 中)
語法
'宣告
Public Function GetSchemaTable As DataTable
'用途
Dim instance As AdomdDataReader
Dim returnValue As DataTable
returnValue = instance.GetSchemaTable()
public DataTable GetSchemaTable()
public:
virtual DataTable^ GetSchemaTable() sealed
abstract GetSchemaTable : unit -> DataTable
override GetSchemaTable : unit -> DataTable
public final function GetSchemaTable() : DataTable
傳回值
型別:DataTable
DataTable ,其中包含 AdomdDataReader 之目前結果的結構描述資訊。
實作
IDataReaderGetSchemaTable
備註
下表描述由 DataTable 依序傳回的資料行,其中展示有關目前結果的結構描述資訊。
名稱 |
資料類型 |
描述 |
---|---|---|
ColumnName |
String |
資料行的標題,這可能不具有唯一性。 如果無法判斷,則傳回 null 值。 此名稱一定會反映資料行在目前檢視或命令文字內最近重新命名的結果。 |
ColumnOrdinal |
Int32 |
資料行的序號。 若是資料列的書籤資料行 (如果有),則其值為零。 其他資料行會從 1 開始編號。 此資料行不得包含 null 值。 |
ColumnSize |
Int32 |
此資料行一律會傳回 0。 |
NumericPrecision |
Int32 |
此資料行一律會傳回 0。 |
NumericScale |
Int32 |
此資料行一律會傳回 0。 |
DataType |
Type |
傳回資料行的 .NET Framework 類型。 |
ProviderType |
Object |
資料行之資料類型的指標。 如果資料行中各資料列的資料類型互異,則其值一定是 Object。 此資料行不得包含 null 值。 |
IsLong |
Boolean |
設定是否資料行包含二進位大型物件 (BLOB),含有很長的資料。 所謂很長的資料,具體定義視提供者而定。 此旗標的設定通常對應到資料類型的 PROVIDER_TYPES 資料列集內 IS_LONG 資料行的值。 |
AllowDBNull |
Boolean |
設定是否取用者可將資料行設為 null 值,或者是否提供者無法判斷取用者能否將資料行設為 null 值。 其他情況則為未設定。 資料行即便不得設為 null 值,還是有可能包含 null 值。 |
IsReadOnly |
Boolean |
如果可以修改資料行,即傳回 true,否則傳回 false。 此資料行一律會傳回 true。 |
IsRowVersion |
String |
設定是否資料行包含無法寫入的永續性資料列識別碼,且除了識別資料列以外不含任何有意義的值。 |
IsUnique |
Boolean |
如果基底資料表 (由 BASETABLENAME 傳回的資料表) 中位於此資料行的任兩個資料列皆不得有相同的值,則傳回 true。 若資料行本身構成索引鍵,或者只有此資料行套用了 UNIQUE 類型的條件約束,IsUnique 就一定會是 true。 否則,如果基底資料表的資料行可包含重複的值,則此資料行將傳回 false。 此資料行的預設值是 false。 |
IsKey |
Boolean |
如果資料行是資料列集內共同唯一識別資料列之整組資料行的一員,則傳回 true。 將 IsKey 設為 true 的整組資料行必須唯一識別資料列集內的某個資料列。 這組資料行不必是最少資料行的組合。 這組資料行可從基底資料表主索引鍵、唯一條件約束或唯一索引產生。 否則,如果資料行不需要唯一識別資料列,便會傳回 false。 此資料行一律會傳回 false。 |
IsAutoIncrement |
Boolean |
如果資料行是以固定遞增值為新資料列指派值,則此資料行會傳回 true。 否則,此資料行將傳回 false。 此資料行一律會傳回 false。 |
BaseSchemaName |
String |
資料存放區內包含資料行之結構描述的名稱。 如果無法判斷基底結構描述名稱,則為 null 值。 此資料行一律會傳回 null 值。 |
BaseCatalogName |
String |
資料存放區內包含資料行之目錄的名稱。 如果無法判斷基底目錄名稱,則為 null 值。 此資料行一律會傳回 null 值。 |
BaseTableName |
String |
資料存放區內包含資料行之資料表或檢視表的名稱。 如果無法判斷基底資料表名稱,則為 null 值。 此資料行一律會傳回 null 值。 |
BaseColumnName |
String |
資料行在結果中的名稱。 如果使用了別名,其值可能會與 ColumnName 資料行所傳回的資料行名稱不同。 如果無法判斷基底資料行名稱,或者資料列集資料行是衍生而來但與結果中的資料行不同,則將傳回 null 值。 此資料行一律會傳回 null 值。 |