Error: 'dynamodb' object has no attribute 'table'

Answered by Rafal Wilinski
What's Causing This Error
This error occurs in the AWS Python SDK when obtaining a table resource using the DynamoDB "client" rather than the "resource."
import boto3
// error occurs when "boto3.client" is used
dynamodb = boto3.client('dynamodb')
table = dynamodb.Table('my-custom-table')
The snippet above uses the boto3.client('dynamodb') that causes the error.
Solution - Here's How To Resolve It
Use the DynamoDB "resource" rather than the "client" to resolve the error.
import boto3
// no error with "boto3.resource"
dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('my-custom-table')
// perform operations with the table as there is no error
Other Common DynamoDB Errors (with Solutions)
- DynamoDB FilterExpression Not Working
- dynamodb could not instantiate class
- DynamoDB Internal Server Error
- DynamoDB Delete Not Working
- dynamodb-admin is not recognized as an internal or external command
- dynamodb cannot read properties of undefined
- DynamoDB cannot do operations on a non-existent table
- DynamoDB parameter validation failed
- ValidationException: Invalid KeyConditionExpression: Attribute name is a reserved keyword;
- DynamoDB type is not supported
- DynamoDB Local Docker Not Working
- dynamodb 1 validation error detected value
- DynamoDB missing items
- DynamoDB stream lambda error
- DynamoDB Is Not Null
Dynobase is a Professional GUI Client for DynamoDB
Start your 7-day free trial today
Product Features
DynamoDB Tools
DynamoDB Info
© 2026 Dynobase