Alter Table es una declaración DDL (lenguaje de definición de datos) que se utiliza para agregar, quitar o alterar columnas existentes. Con esta declaración, también puede cambiar el nombre de una tabla o columna y hacer restricciones. Usando una tabla como ejemplo, este tutorial muestra la alteración de las declaraciones de la tabla con la sintaxis.
Puede descargar los ejemplos utilizados en este artículo y probarlos en su máquina local aquí. Puede verificar los cambios en la estructura de la tabla usando sp_help 'Empleado'.
Primero, comenzamos creando una tabla.
Crear empleado de tabla (EmployeeId INT, EmployeeName VARCHAR (25), Salary INT, ContactNo VARCHAR (10), DeptId INT, Active BIT,); Crear departamento de tablas (LLA PRIMARIA DE DeptId INT, DeptName VARCHAR (50));
SQL Server - Agregar una columna a una tabla existente
Sintaxis ALTER TABLE [TableName] ADD [ColumnName] [DataType] [Null OR Not Null] Ejemplo ALTER TABLE Empleado ADD Address VARCHAR (255) NOT NULL
SQL Server - Eliminar una columna existente de una tabla
Sintaxis ALTER TABLE [TableName] DROP COLUMN [ColumnName] Ejemplo ALTER TABLE Empleado DROP COLUMN DIRECCIÓN
SQL Server - Cambiar el tipo de datos de una columna existente
Sintaxis ALTER TABLE [Nombre de tabla] ALTER COLUMN [ColumnName] [DataType] Ejemplo ALTER TABLE Empleado ALTER COLUMN Salario DECIMAL (18,2)
SQL Server - Cambiar el tamaño de una columna existente
Sintaxis ALTER TABLE [TableName] ALTER COLUMN [Columnname] [DataType] Ejemplo ALTER TABLE Employee ALTER COLUMN EmployeeName VARCHAR (50)
SQL Server: agregar una restricción de clave principal a una tabla existente
Sintaxis ALTER TABLE [TableName] ADD RESTRAINT [Constraint Name] CLAVE PRINCIPAL (ColumnName) Ejemplo ALTER TABLE Empleado ADD CONSTRAINT PK_Employee_EmployeeId PRIMARY KEY (EmployeeId)
SQL Server: elimine la restricción de clave principal existente en una tabla existente
Sintaxis ALTER TABLE [TableName] DROP CONSTRAINT [ConstraintName] Ejemplo ALTER TABLE Empleado DROP RESTRAINT PK_Employee_EmployeeId
SQL Server - Agregar una restricción de clave externa
Sintaxis ALTER TABLE [TableName] ADD RESTRAINT [Constraintname] FOREIGN KEY (ColumnName) REFERENCES [TableName] (ColumnName) Ejemplo ALTER TABLE Empleado ADD CONSTRAINT Fk_Employee_DeptId FOREIGN KEY (EmployeeId) REFERENCES Department (DeptId)
SQL Server: elimine una restricción de clave externa
Sintaxis ALTER TABLE [TableName] DROP RESTRAINT [Foreign_Key_Constraint_Name] Ejemplo ALTER TABLE Empleado DROP RESTRAINT Fk_Employee_DeptId
SQL Server - Agregar una restricción de verificación a una tabla existente
Sintaxis ALTER TABLE [TableName] ADD RESTRAINT [Check_Constraint_Name] CHECK (Check_Condition) Ejemplo ALTER TABLE Empleado ADD CONSTRAINT CK_Employee_Salary CHECK (Salary> 0)
SQL Server - Drop Check una restricción en una tabla existente
Sintaxis ALTER TABLE [TableName] DROP RESTRAINT [Check_Constraint_Name] Ejemplo ALTER TABLE Empleado DROP CONSTRAINT CK_Employee_Salary
SQL Server: agregue una restricción NULL o NOT NULL a una tabla existente
Sintaxis ALTER TABLE [TableName] ALTER COLUMN [ColumnName] [DataType] [NULL O NOT NULL] Ejemplo ALTER TABLE Empleado ALTER COLUMN ContactoNo VARCHAR (10) NULL
SQL Server - Agregar una restricción predeterminada a una tabla existente
Sintaxis ALTER TABLE [TableName] ADD RESTRAINT [DefaultConstraintName] DEFAULT [DefaultValue] FOR [ColumnName] Ejemplo ALTER TABLE Empleado ADD CONSTRAINT DF_Employee_Active DEFAULT 0 FOR ACTIVE
SQL Server: eliminar una restricción predeterminada en una tabla existente
Sintaxis ALTER TABLE [TableName] DROP CONSTRAINT [Default_ConstraintName] Ejemplo ALTER TABLE Empleado DROP CONSTRAINT DF_Employee_Active
SQL Server - Cambiar la intercalación de una columna existente
Sintaxis ALTER TABLE [TableName] ALTER COLUMN [ColumnName] [DataType] COLLATE [CollationName]; Ejemplo ALTER TABLE Employee ALTER COLUMN EmployeeName varchar (25) COLLATE Latin1_General_CI_AS NOT NULL;
SQL Server - Deshabilitar una restricción de clave externa
Sintaxis ALTER TABLE [TableName] NOCHECK RESTRAINT [ConstraintName]; Ejemplo ALTER TABLE Empleado NOCHECK CONSTRAINT Fk_Employee_DeptId;
SQL Server - Deshabilitar una restricción de clave de verificación
Sintaxis ALTER TABLE [TableName] NOCHECK RESTRAINT [ConstraintName]; Ejemplo ALTER TABLE Empleado NOCHECK CONSTRAINT CK_Employee_Salary;
SQL Server- Renombrar una columna en una tabla
Sintaxis EXEC sp_RENAME TableName.OldColumnName, NewColumnName, ColumnName Ejemplo EXEC sp_RENAME 'table_name.old_name', 'new_name', 'COLUMN'