Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

844
Vistas
DynamoDb eliminar elemento inexistente no falla, ¿por qué?

Estoy eliminando un registro que no existe de la tabla dynamodb usando dynamoDbMapper.delete(object) que usa DynamoDBDeleteExpression predeterminado

Esperaba que surgiera algún tipo de excepción ya que el registro no está en la base de datos, pero no hace nada. Ni siquiera tiene un tipo de devolución que pueda indicar si la eliminación fue exitosa o fallida. ¿Hay alguna manera de agregar una expresión de eliminación o algo que haga que mi eliminación arroje una excepción si el elemento no está en la base de datos?

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Es por diseño:

A menos que especifique condiciones, DeleteItem es una operación idempotente; ejecutarlo varias veces en el mismo elemento o atributo no da como resultado una respuesta de error.

DE: https://docs.aws.amazon.com/amazondynamodb/latest/APIReference/API_DeleteItem.html

over 4 years ago · Santiago Trujillo Denunciar

0

Es posible utilizar ReturnValues para determinar si la eliminación hizo algo o no. Si ReturnValues.Attributes está vacío, significa que la eliminación no encontró un registro para eliminar, y puede arrojar un error en este caso. Ejemplo en JavaScript:

 async function deleteWithThrowIfNotExists() { const dynamo = new AWS.DynamoDB.DocumentClient(); const parameters = { Key: { user: 'john' }, ReturnValues: 'ALL_OLD', TableName: 'users' }; const response = await dynamo.delete(parameters).promise(); if (!response.Attributes) { throw new Error('Cannot delete item that does not exist') } }
over 4 years ago · Santiago Trujillo Denunciar

0

Primero puede cargar el elemento, y si el elemento no existe, puede lanzar una excepción; de lo contrario, eliminarlo.

over 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda