En programación informática , crear, leer, actualizar y eliminar ( CRUD ) son las cuatro operaciones básicas (acciones) del almacenamiento persistente . [ 1 ] CRUD también se utiliza a veces para describir convenciones de interfaz de usuario que facilitan la visualización, búsqueda y modificación de información mediante formularios e informes informáticos .
Historia
Es probable que el término CRUD se popularizara por primera vez en 1983 [ 2 ] por James Martin en su libro Managing the data-base environment .
Conceptual
Los datos se pueden colocar en una ubicación/área de un mecanismo de almacenamiento.
- La característica fundamental de una ubicación de almacenamiento es que su contenido sea legible y actualizable .
- Antes de que se pueda leer o actualizar una ubicación de almacenamiento, es necesario crearla ; es decir, asignarla e inicializarla con contenido.
- En algún momento posterior, puede que sea necesario destruir la ubicación de almacenamiento ; es decir, finalizar el proceso y liberarla.
En conjunto, estas cuatro operaciones conforman las operaciones básicas de gestión de almacenamiento conocidas como CRUD: Crear , Leer , Actualizar y Eliminar .
Casos de uso
Bases de datos
El acrónimo CRUD se refiere a las principales operaciones que implementan las bases de datos . Cada letra del acrónimo se puede asignar a una instrucción estándar del lenguaje de consulta estructurado (SQL) . [ 3 ]
Si bien las bases de datos relacionales son una capa de persistencia común en las aplicaciones de software, existen muchas otras capas de persistencia. La funcionalidad CRUD, por ejemplo, se puede implementar con bases de datos de documentos , bases de datos de objetos , bases de datos XML , archivos de texto o archivos binarios.
Algunos sistemas de big data no implementan la función UPDATE, sino que solo disponen de una función INSERT (registro) con marca de tiempo, almacenando una versión completamente nueva del objeto cada vez.
API RESTful
El acrónimo CRUD también aparece en la discusión sobre las API RESTful . Cada letra del acrónimo puede corresponder a un método del Protocolo de Transferencia de Hipertexto (HTTP) :
En HTTP, los métodos POST (crear), GET (leer), PUT (actualizar), PATCH (actualización parcial) y DELETE corresponden a operaciones CRUD, ya que poseen una semántica de gestión de almacenamiento, lo que significa que permiten a los agentes de usuario manipular directamente los estados de los recursos de destino . [ 4 ] Sin embargo, POST no se limita a la creación de recursos y también puede utilizarse para operaciones orientadas a procesos cuya semántica excede el alcance de CRUD. [ 5 ]
Interfaz de usuario
CRUD también es relevante a nivel de interfaz de usuario de la mayoría de las aplicaciones. Por ejemplo, en el software de agenda de contactos, la unidad de almacenamiento básica es una entrada de contacto individual . Como mínimo, el software debe permitir al usuario: [ 6 ]
- Crear o agregar nuevas entradas
- Leer , recuperar, buscar o ver entradas existentes
- Actualizar o editar las entradas existentes
- Eliminar , desactivar o borrar entradas existentes
Debido a la naturaleza fundamental de estas operaciones, a menudo se documentan y describen bajo un epígrafe general como "gestión de contactos" o "gestión de documentos" en general.
Otras variaciones
Otras variantes de CRUD incluyen:
Véase también
Referencias
- ↑ Martin, James (1983). Managing the Data-base Environment . Englewood Cliffs, Nueva Jersey: Prentice-Hall. pág. 381. ISBN 0-135-50582-8.
- ↑ Martin, James (1983). Managing the data-base environment . Englewood Cliffs, Nueva Jersey: Prentice-Hall. p. 381. ISBN 0135505828.
- ↑ Maryam Sulemani (7 de abril de 2021). "Operaciones CRUD explicadas: Crear, leer, actualizar, eliminar" . Consultado el 14 de diciembre de 2021 .
- ↑ Fielding, Roy (junio de 2014). "Protocolo de transferencia de hipertexto (HTTP/1.1): semántica y contenido, sección 4" . IETF . Grupo de trabajo de ingeniería de Internet (IETF). RFC 7231. Recuperado el 14 de febrero de 2018 .
- ↑ Roy T. Fielding (2009-03-20). "Está bien usar POST" . roy.gbiv.com . Recuperado el 14 de abril de 2020. POST
solo se convierte en un problema cuando se usa en una situación para la que otro método es ideal: por ejemplo, la recuperación de información que debería ser una representación de algún recurso (GET), el reemplazo completo de una representación (PUT), o cualquiera de los otros métodos estandarizados que les dicen a los intermediarios algo más valioso que "esto puede cambiar algo". Los otros métodos son más valiosos para los intermediarios porque dicen algo sobre cómo se pueden manejar los fallos automáticamente y cómo las cachés intermedias pueden optimizar su comportamiento. POST no tiene esas características, pero eso no significa que podamos vivir sin él. POST cumple muchos propósitos útiles en HTTP, incluido el propósito general de "esta acción no merece ser estandarizada".
- ↑ Kann, Charles. Programación para la Web - De principio a fin - Implementación de una página web SIG completa . Gettysburg College. págs. 6.1 Interfaz CRUD.
- ↑ Paul M. Jones (2008). "PAN, no BASURA" .
- ^ McGaw, James (21 de junio de 2010). Comenzando el comercio electrónico de Django . Presione. pag. 41.ISBN 9781430225362.
- ↑ "CRAP y CRUD: De la base de datos a la nube de datos - Direct2DellEMC" . Direct2DellEMC . 13 de noviembre de 2012. Consultado el 30 de enero de 2018 .
- Sistemas de gestión de bases de datos