Skip to content

delete_relational_database async

delete_relational_database(
    relational_database_name: ResourceName,
    *,
    config_overrides: Optional[AsyncLightsailClientConfig] = None,
    skip_final_snapshot: Optional[boolean] = None,
    final_relational_database_snapshot_name: Optional[ResourceName] = None,
) -> DeleteRelationalDatabaseResult

Deletes a database in Amazon Lightsail.

The delete relational database operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the Amazon Lightsail Developer Guide.

Parameters:

  • relational_database_name (ResourceName) –

    The name of the database that you are deleting.

  • skip_final_snapshot (Optional[boolean], default: None ) –

    Determines whether a final database snapshot is created before your database is deleted. If true is specified, no database snapshot is created. If false is specified, a database snapshot is created before your database is deleted.

    You must specify the final relational database snapshot name parameter if the skip final snapshot parameter is false.

    Default: false

  • final_relational_database_snapshot_name (Optional[ResourceName], default: None ) –

    The name of the database snapshot created if skip final snapshot is false, which is the default value for that parameter.

    Specifying this parameter and also specifying the skip final snapshot parameter to true results in an error.

    Constraints:

    • Must contain from 2 to 255 alphanumeric characters, or hyphens.

    • The first and last character must be a letter or number.

Raises:

  • AccessDeniedException –

    Lightsail throws this exception when the user cannot be authenticated or uses invalid credentials to access a resource.

  • AccountSetupInProgressException –

    Lightsail throws this exception when an account is still in the setup in progress state.

  • InvalidInputException –

    Lightsail throws this exception when user input does not conform to the validation rules of an input field.

    Domain and distribution APIs are only available in the N. Virginia (us-east-1) Amazon Web Services Region. Please set your Amazon Web Services Region configuration to us-east-1 to create, view, or edit these resources.

  • NotFoundException –

    Lightsail throws this exception when it cannot find a resource.

  • OperationFailureException –

    Lightsail throws this exception when an operation fails to execute.

  • RegionSetupInProgressException –

    Lightsail throws this exception when an operation is performed on resources in an opt-in Region that is currently being set up.

  • ServiceException –

    A general service exception.

  • UnauthenticatedException –

    Lightsail throws this exception when the user has not been authenticated.

  • UnknownServiceError –

    The service returned an error code this client does not model.

Source code in docs_src/capo_lightsail/_services/async_lightsail.py
async def delete_relational_database(
    self,
    relational_database_name: "capo_lightsail.types.resource_name.ResourceName",
    *,
    config_overrides: Optional[AsyncLightsailClientConfig] = None,
    skip_final_snapshot: Optional["capo_lightsail.types.boolean.boolean"] = None,
    final_relational_database_snapshot_name: Optional[
        "capo_lightsail.types.resource_name.ResourceName"
    ] = None,
) -> "capo_lightsail.types.delete_relational_database_result.DeleteRelationalDatabaseResult":
    """<p>Deletes a database in Amazon Lightsail.</p> <p>The <code>delete relational database</code> operation supports tag-based access control via resource tags applied to the resource identified by relationalDatabaseName. For more information, see the <a href="https://docs.aws.amazon.com/lightsail/latest/userguide/amazon-lightsail-controlling-access-using-tags">Amazon Lightsail Developer Guide</a>.</p>

    Args:
        relational_database_name: <p>The name of the database that you are deleting.</p>
        skip_final_snapshot: <p>Determines whether a final database snapshot is created before your database is deleted. If <code>true</code> is specified, no database snapshot is created. If <code>false</code> is specified, a database snapshot is created before your database is deleted.</p> <p>You must specify the <code>final relational database snapshot name</code> parameter if the <code>skip final snapshot</code> parameter is <code>false</code>.</p> <p>Default: <code>false</code> </p>
        final_relational_database_snapshot_name: <p>The name of the database snapshot created if <code>skip final snapshot</code> is <code>false</code>, which is the default value for that parameter.</p> <note> <p>Specifying this parameter and also specifying the <code>skip final snapshot</code> parameter to <code>true</code> results in an error.</p> </note> <p>Constraints:</p> <ul> <li> <p>Must contain from 2 to 255 alphanumeric characters, or hyphens.</p> </li> <li> <p>The first and last character must be a letter or number.</p> </li> </ul>

    Raises:
        capo_lightsail.errors.access_denied_exception.AccessDeniedException: <p>Lightsail throws this exception when the user cannot be authenticated or uses invalid credentials to access a resource.</p>
        capo_lightsail.errors.account_setup_in_progress_exception.AccountSetupInProgressException: <p>Lightsail throws this exception when an account is still in the setup in progress state.</p>
        capo_lightsail.errors.invalid_input_exception.InvalidInputException: <p>Lightsail throws this exception when user input does not conform to the validation rules of an input field.</p> <note> <p>Domain and distribution APIs are only available in the N. Virginia (<code>us-east-1</code>) Amazon Web Services Region. Please set your Amazon Web Services Region configuration to <code>us-east-1</code> to create, view, or edit these resources.</p> </note>
        capo_lightsail.errors.not_found_exception.NotFoundException: <p>Lightsail throws this exception when it cannot find a resource.</p>
        capo_lightsail.errors.operation_failure_exception.OperationFailureException: <p>Lightsail throws this exception when an operation fails to execute.</p>
        capo_lightsail.errors.region_setup_in_progress_exception.RegionSetupInProgressException: <p>Lightsail throws this exception when an operation is performed on resources in an opt-in Region that is currently being set up.</p>
        capo_lightsail.errors.service_exception.ServiceException: <p>A general service exception.</p>
        capo_lightsail.errors.unauthenticated_exception.UnauthenticatedException: <p>Lightsail throws this exception when the user has not been authenticated.</p>
        capo_lightsail.errors.UnknownServiceError: The service returned an error code this client does not model.
    """

    async def _handler(
        req: "AsyncOperationRequest[capo_lightsail.types.delete_relational_database_request.DeleteRelationalDatabaseRequest]",
    ) -> AsyncOperationResponse[
        "capo_lightsail.types.delete_relational_database_result.DeleteRelationalDatabaseResult"
    ]:
        import capo_lightsail._operations.lightsail_20161128.delete_relational_database

        (
            output,
            http_response,
        ) = await capo_lightsail._operations.lightsail_20161128.delete_relational_database.async_delete_relational_database(
            req.options, req.input
        )
        return AsyncOperationResponse(output=output, response=http_response)

    interceptors_, options_ = self.operation_options(
        config_overrides, OperationLogging("DeleteRelationalDatabase")
    )
    input_: capo_lightsail.types.delete_relational_database_request.DeleteRelationalDatabaseRequest = {
        "relational_database_name": relational_database_name
    }
    if skip_final_snapshot is not None:
        input_["skip_final_snapshot"] = skip_final_snapshot
    if final_relational_database_snapshot_name is not None:
        input_["final_relational_database_snapshot_name"] = (
            final_relational_database_snapshot_name
        )

    response = await aexecute_pipeline(
        AsyncOperationRequest(input=input_, options=options_),
        handler=_handler,
        interceptors=list(interceptors_),
    )
    await response.response.aclose()
    return response.output