AWS services or capabilities described in AWS Documentation may vary by region/location. Click Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.
Returns information about the table, including the current status of the table, when
it was created, the primary key schema, and any indexes on the table.
If you issue a DescribeTable request immediately after a CreateTable
request, DynamoDB might return a ResourceNotFoundException. This is because
DescribeTable uses an eventually consistent query, and the metadata for your
table might not be available at that moment. Wait for a few seconds, and then try
the DescribeTable request again.
For .NET Core this operation is only available in asynchronous form. Please refer to DescribeTableAsync.
Namespace: Amazon.DynamoDBv2
Assembly: AWSSDK.DynamoDBv2.dll
Version: 3.x.y.z
public virtual DescribeTableResponse DescribeTable( DescribeTableRequest request )
Container for the necessary parameters to execute the DescribeTable service method.
| Exception | Condition |
|---|---|
| InternalServerErrorException | An error occurred on the server side. |
| ResourceNotFoundException | The operation tried to access a nonexistent table or index. The resource might not be specified correctly, or its status might not be ACTIVE. |
This example shows how to get a description for an existing table.
// Create a client
AmazonDynamoDBClient client = new AmazonDynamoDBClient();
// Create DescribeTable request
DescribeTableRequest request = new DescribeTableRequest
{
TableName = "SampleTable"
};
// Issue DescribeTable request and retrieve the table description
TableDescription tableDescription = client.DescribeTable(request).Table;
// View new table properties
Console.WriteLine("Table name: {0}", tableDescription.TableName);
Console.WriteLine("Creation time: {0}", tableDescription.CreationDateTime);
Console.WriteLine("Item count: {0}", tableDescription.ItemCount);
Console.WriteLine("Table size (bytes): {0}", tableDescription.TableSizeBytes);
Console.WriteLine("Table status: {0}", tableDescription.TableStatus);
// List table key schema
List<KeySchemaElement> tableSchema = tableDescription.KeySchema;
for (int i = 0; i < tableSchema.Count; i++)
{
KeySchemaElement element = tableSchema[i];
Console.WriteLine("Key: Name = {0}, KeyType = {1}",
element.AttributeName, element.KeyType);
}
// List attribute definitions
List<AttributeDefinition> attributeDefinitions = tableDescription.AttributeDefinitions;
for (int i = 0; i < attributeDefinitions.Count; i++)
{
AttributeDefinition definition = attributeDefinitions[i];
Console.WriteLine("Attribute: Name = {0}, Type = {1}",
definition.AttributeName, definition.AttributeType);
}
Console.WriteLine("Throughput: Reads = {0}, Writes = {1}",
tableDescription.ProvisionedThroughput.ReadCapacityUnits,
tableDescription.ProvisionedThroughput.WriteCapacityUnits);
.NET Framework:
Supported in: 4.5 and newer, 3.5