En programación de computadoras , Crear, Leer, Actualizar y Eliminar ( CRUD ) son las cuatro operaciones básicas del almacenamiento persistente . [1] CRUD también se usa a veces para describir las convenciones de la interfaz de usuario que facilitan la visualización, la búsqueda y el cambio de información mediante formularios e informes basados en computadora . El término probablemente fue popularizado por primera vez por James Martin en su libro de 1983 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 es tanto legible como actualizable .
- Antes de poder leer o actualizar una ubicación de almacenamiento, es necesario crearla ; que se asigna e inicializa con contenido.
- En algún momento posterior, es posible que sea necesario destruir la ubicación de almacenamiento ; que está finalizado y desasignado.
Juntas, estas cuatro operaciones conforman las operaciones básicas de la gestión del almacenamiento conocidas como CRUD: crear, leer, actualizar y eliminar.
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 declaración estándar de lenguaje de consulta estructurado (SQL) .
CRUD | SQL |
---|---|
Crear | INSERTAR |
Leer | SELECCIONE |
Actualizar | ACTUALIZAR |
Borrar | ELIMINAR |
Aunque 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 se puede implementar, por ejemplo, con bases de datos de documentos , bases de datos de objetos , bases de datos XML , archivos de texto o archivos binarios.
Nota: Algunos sistemas de big data no implementan ACTUALIZAR, pero solo tienen un INSERT (registro en diario) con marca de tiempo, que almacena una versión completamente nueva del objeto cada vez.
API RESTful
El acrónimo CRUD también aparece en la discusión de las API RESTful . Cada letra del acrónimo se puede asignar a un método de Protocolo de transferencia de hipertexto (HTTP) :
CRUD | HTTP |
---|---|
Crear | PONER |
Leer | OBTENER |
Actualizar | PONER |
Borrar | ELIMINAR |
En HTTP, los métodos GET (leer), PUT (crear y actualizar) y DELETE (eliminar) son operaciones CRUD, ya que tienen semántica de administración de almacenamiento, lo que significa que permiten que los agentes de usuario manipulen directamente los estados de los recursos de destino . [2] El método POST , por otro lado, es una operación de proceso que tiene una semántica específica del recurso de destino que excluye la semántica de las operaciones CRUD. [3]
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 la libreta de direcciones, la unidad de almacenamiento básica es una entrada de contacto individual . Como mínimo, el software debe permitir al usuario: [4]
- Crear o agregar nuevas entradas
- Leer, recuperar, buscar o ver entradas existentes
- Actualizar o editar entradas existentes
- Eliminar, desactivar o eliminar entradas existentes
Debido a que estas operaciones son tan fundamentales, a menudo se documentan y describen bajo un título completo, como "gestión de contactos" o "gestión de documentos" en general.
Otras variaciones
Otras variaciones de CRUD incluyen:
Ver también
Referencias
- ^ Martin, James (1983). Gestión del entorno de la base de datos . Acantilados de Englewood, Nueva Jersey: Prentice-Hall. pag. 381. ISBN 0-135-50582-8.
- ^ 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 . Consultado el 14 de febrero de 2018 .
- ^ Roy T. Fielding (20 de marzo de 2009). "Está bien usar POST" . roy.gbiv.com . Consultado el 14 de abril de 2020 .
POST solo se convierte en un problema cuando se usa en una situación para la cual algún otro método es ideal: por ejemplo, recuperación de información que debería ser una representación de algún recurso (GET), 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 las fallas pueden manejarse automáticamente y cómo los cachés intermedios pueden optimizar su comportamiento. POST no tiene esas características, pero eso no significa que podamos vivir sin él. POST tiene muchos propósitos útiles en HTTP, incluido el propósito general de "no vale la pena estandarizar esta acción".
- ^ Kann, Charles. Programación para la Web - De la sopa a las nueces - Implementación de una página web GIS completa . Universidad de Gettysburg. págs. 6.1 Interfaz CRUD.
- ^ Paul M. Jones (2008). "PAN, no CRUDO" .
- ^ McGaw, James (21 de junio de 2010). Comenzando con Django E-Commerce . pag. 41. ISBN 9781430225362.
- ^ "CRAP y CRUD: de la base de datos a la nube de datos - Direct2DellEMC" . Direct2DellEMC . 2012-11-13 . Consultado el 30 de enero de 2018 .