本文介紹如何通過.NET SDK查詢資料表的詳細資料。
前提條件
方法說明
public DescribeTableResponse DescribeTable(DescribeTableRequest request)非同步方法呼叫:
public Task<DescribeTableResponse> DescribeTableAsync(DescribeTableRequest request)範例程式碼
以下範例程式碼用於查詢test_table表的詳細資料。
try
{
var request = new DescribeTableRequest("test_table");
var response = client.DescribeTable(request);
// 資料表結構資訊
var tableMeta = response.TableMeta;
Console.WriteLine("* 資料表名稱: " + tableMeta.TableName);
Console.WriteLine("* 主鍵資訊");
foreach (var primaryKey in tableMeta.PrimaryKeySchema)
{
Console.WriteLine($"{primaryKey.Item1}:{primaryKey.Item2}");
}
Console.WriteLine("* 預定義列資訊");
foreach (var definedColumn in tableMeta.DefinedColumnSchema)
{
Console.WriteLine($"{definedColumn.Item1}:{definedColumn.Item2}");
}
// 資料表配置資訊
var tableOptions = response.TableOptions;
Console.WriteLine("* 資料表配置資訊");
Console.WriteLine("資料生命週期: " + tableOptions.TimeToLive);
Console.WriteLine("最大版本數: " + tableOptions.MaxVersions);
Console.WriteLine("有效版本偏差: " + tableOptions.DeviationCellVersionInSec);
Console.WriteLine("是否允許更新: " + tableOptions.AllowUpdate);
// 資料表Stream資訊
var streamDetails = response.StreamDetails;
Console.WriteLine("* 是否開啟Steam: " + streamDetails.EnableStream);
if (streamDetails.EnableStream)
Console.WriteLine("Stream到期時間: " + streamDetails.ExpirationTime);
// 資料表預留讀寫輸送量
var reservedThroughputDetails = response.ReservedThroughputDetails;
Console.WriteLine("* 預留讀寫輸送量");
Console.WriteLine("預留讀輸送量: " + reservedThroughputDetails.CapacityUnit.Read);
Console.WriteLine("預留寫輸送量: " + reservedThroughputDetails.CapacityUnit.Write);
}
catch (Exception ex)
{
Console.WriteLine($"Describe table failed, exception:{ex.Message}");
}