Redshift Alter Table Agregar columna

Redshift Alter Table Agregar columna
Amazon Redshift es una base de datos SQL basada en la nube o, más específicamente, un servicio de almacenamiento de datos. Es una oferta totalmente administrada sin servidor de AWS donde solo necesita configurar un clúster de desplazamiento rojo para llevar a cabo el trabajo. Hay nodos de cómputo en cada clúster de desplazamiento al rojo que dependen de la carga de trabajo en la base de datos.

Este artículo explica cómo puede agregar una nueva columna a una tabla de desplazamiento al rojo existente sin interrumpir nada más en la estructura de la base de datos. Asumimos que antes de pasar por este artículo, tiene conocimiento de configurar un clúster de desplazamiento rojo.

Breve resumen de los comandos SQL

Revisemos brevemente los cinco tipos básicos de comandos SQL para averiguar qué tipo de comando necesitaremos agregar una nueva columna a una tabla.

  • Lenguaje de definición de datos (DDL): Los comandos DDL se utilizan principalmente para hacer cambios estructurales en la base de datos, como crear una nueva tabla, eliminar una tabla, hacer cambios en una tabla como agregar y eliminar una columna, etc. Los principales comandos asociados con él son: crear, alterar, soltar y truncar.
  • Lenguaje de manipulación de datos (DML): Estos son los comandos más utilizados para manipular datos en la base de datos. La entrada de datos regular, la eliminación de datos y las actualizaciones se realizan utilizando estos comandos. Esto incluye comandos de inserción, actualización y eliminación.
  • Lenguaje de control de datos (DCL): Estos son comandos simples utilizados para administrar los permisos del usuario en la base de datos. Puede permitir o negar a un usuario en particular que realice algún tipo de operación en la base de datos. Los comandos utilizados aquí son Grant and Revoke.
  • Lenguaje de control de transacciones (TCL): Estos comandos se utilizan para administrar las transacciones en la base de datos. Estos se utilizan para guardar los cambios de la base de datos o para descartar cambios específicos devolviendo a algún punto anterior. Los comandos incluyen Commit, Rollback y SavePoint.
  • Lenguaje de consulta de datos (DQL): Estos simplemente se usan para extraer o consultar algunos datos específicos de la base de datos. Se utiliza un solo comando para llevar a cabo esta operación, y ese es el comando SELECT.

De la discusión anterior, está claro que necesitaremos un comando DDL ALTERAR Para agregar una nueva columna a una tabla existente.

Propietario de la mesa cambiante

Como probablemente sepa, cada base de datos tiene sus usuarios y un conjunto diferente de permisos. Entonces, antes de intentar editar una tabla, su usuario debe ser dueño de esa tabla en la base de datos. De lo contrario, no obtiene permiso para cambiar nada. En tales casos, debe permitir al usuario realizar operaciones específicas en la tabla cambiando el propietario de la tabla. Puede elegir un usuario existente o crear un nuevo usuario en su base de datos y luego ejecutar el siguiente comando:

alterar la mesa
dueño de < new user>

De esta manera, puede cambiar el propietario de la tabla utilizando el comando alter. Ahora, veremos cómo agregar una nueva columna a nuestra tabla de base de datos existente.

Agregar una columna en la tabla de desplazamiento rojo

Suponga que ejecuta una pequeña empresa de tecnología de la información con diferentes departamentos y ha desarrollado tablas de bases de datos separadas para cada departamento. Todos los datos de los empleados para el equipo de recursos humanos se almacenan en la tabla llamada HR_TEAM, con tres columnas llamadas Serial_Number, Name y Date_Of_Joining. Los detalles de la tabla se pueden ver en la siguiente captura de pantalla:

Todo va bien. Pero con el tiempo, te das cuenta de aliviar más tu vida agregando los salarios de los empleados en la base de datos que previamente gestionó utilizando hojas de cálculo simples. Por lo tanto, desea llenar otra columna en cada tabla departamental llamada Salario.

La tarea se puede realizar simplemente utilizando el siguiente comando ALTER TABLE:

alterar la mesa

agregar

Luego, necesita los siguientes atributos para ejecutar la consulta anterior en el clúster de desplazamiento rojo:

  • Nombre de la tabla: Nombre de la tabla en la que desea agregar una nueva columna
  • Nombre de la columna: Nombre de la nueva columna que está agregando
  • Tipo de datos: Defina el tipo de datos de la nueva columna

Ahora, agregaremos la columna nombrada salario con el tipo de datos En t a nuestra tabla existente de HR_TEAM.

Entonces, la consulta anterior agregó una nueva columna a la tabla de desplazamiento al rojo existente. El tipo de datos para esta columna es un entero, y el valor predeterminado se establece en NULL. Ahora, puede agregar los datos reales deseados en esta columna.

Agregar columna con longitud de cadena especificada

Tomemos otro caso en el que también puede definir la longitud de la cadena después del tipo de datos para la nueva columna que agregaremos. La sintaxis será la misma, excepto que solo hay la adición de un atributo.

alterar la mesa

agregar <(Length)>

Por ejemplo, desea llamar a cada miembro del equipo con un breve apodo en lugar de su nombre completo, y desea que los apodos estén compuestos por un máximo de cinco caracteres.

Para esto, tendrás que restringir a las personas de ir más allá de cierta longitud para los apodos.

Luego se agrega una nueva columna, y hemos establecido un límite en Varchar para que no pueda tomar más de cinco caracteres.

Ahora, si alguien intenta agregar su apodo más de lo que esperamos, la base de datos no permitirá esa operación e informará un error.

Pero, si ingresamos todos los apodos con cinco o menos caracteres, la operación tendrá éxito.

Al usar la consulta anterior, puede agregar una nueva columna y poner un límite en la longitud de la cadena en la tabla de desplazamiento rojo.

Agregar una columna de clave extranjera

Las claves extranjeras se utilizan para hacer referencia a datos de una columna a otra. Tome un caso en el que tenga personas en su organización que trabajen en más de un equipo, y desea realizar un seguimiento de la jerarquía de su organización. Tengamos Web_team y dev_team Compartir a las mismas personas, y queremos hacer referencia a ellos usando claves extranjeras. El dev_team simplemente tiene dos columnas que son ID de empleado y nombre.

Ahora, queremos crear una columna con nombre ID de empleado en el Web_team mesa. Agregar una nueva columna es la misma que se discutió anteriormente.

A continuación, estableceremos la columna recién agregada como clave extranjera haciendo referencia a la columna ID de empleado presente en el dev_team mesa. Necesita el siguiente comando para establecer la clave extranjera:

Alterar la organización de la tabla.Web_team
Agregar llave extranjera
() Referencias ();

De esta manera, puede agregar una nueva columna y configurarla como una clave extranjera en su base de datos.

Conclusión

Hemos visto cómo hacer cambios en nuestras tablas de base de datos, como agregar una columna, eliminar una columna y renombrar una columna. Estas acciones en la tabla de desplazamiento rojo se pueden realizar simplemente utilizando comandos SQL. Puede cambiar su clave principal o establecer otra clave extranjera si lo desea.