Alter Table är ett DDL (Data Definition Language) -sats som används för att lägga till, släppa eller ändra befintliga kolumner. Med detta uttalande kan du också byta namn på en tabell eller kolumn och göra begränsningar. Med hjälp av en tabell som exempel visar denna handledning alter tabelldeklarationer med syntax.
Du kan hämta de exempel som används i den här artikeln och prova dem på din lokala dator här. Du kan verifiera ändringarna i tabellstrukturen med sp_help "Medarbetare".
Först börjar vi med att skapa ett bord.
Skapa tabellmedarbetare (EmployeeId INT, anställningsnamn VARCHAR (25), Lön INT, KontaktNej VARCHAR (10), DeptId INT, Active BIT); Skapa tabellavdelningen (DeptId INT PRIMARY KEY, DeptName VARCHAR (50));
SQL Server - Lägg till en kolumn i ett existerande tabell
Syntax ALTER TABLE [Tabellnamn] ADD [Kolumnnamn] [DataType] [Noll eller Ej Noll] Exempel ALTER TABLE Medarbetare ADD-adress VARCHAR (255) INTE NULL
SQL Server - Släpp en befintlig kolumn från ett bord
Syntax ALTER TABLE [Tabellnamn] DROP COLUMN [ColumnName] Exempel ALTER TABLE Medarbetare DROP COLUMN ADDRESS
SQL Server - Ändra datatyp för en befintlig kolumn
Syntax ALTER TABLE [Tablename] ALTER KOLUMN [Kolumnnamn] [DataType] Exempel ALTER TABLE Medarbetare ALTER KOLUMN Lön DECIMAL (18,2)
SQL Server - Ändra storleken på en befintlig kolumn
Syntax ALTER TABLE [Tabellnamn] ALTER COLUMN [Kolumnnamn] [DataType] Exempel ALTER TABLE Medarbetare ALTER COLUMN Medarbetare namn VARCHAR (50)
SQL Server - Lägg till en primär nyckelbegränsning till ett befintligt bord
Syntax ALTER TABLE [Tabellnamn] ADD CONSTRAINT [Begränsningsnamn] PRIMÄR KEY (ColumnName) Exempel ALTER TABLE Medarbetare ADD CONSTRAINT PK_Employee_EmployeeId PRIMARY KEY (EmployeeId)
SQL Server - Släpp den befintliga primära nyckelbegränsningen på ett befintligt bord
Syntax ALTER TABLE [Tabellnamn] DROP CONSTRAINT [ConstraintName] Exempel ALTER TABLE Medarbetare DROP CONSTRAINT PK_Employee_EmployeeId
SQL Server - Lägg till en utländsk nyckelbegränsning
Syntax ALTER TABLE [Tabellnamn] ADD CONSTRAINT [Constraintname] FOREIGN KEY (Kolumnnamn) REFERENSER [Tabellnamn] (Kolumnnamn) Exempel ALTER TABLE Arbetstagare ADD CONSTRAINT Fk_Employee_DeptId Utländsk nyckel (EmployeeId) REFERENSER Avdelning (DeptId)
SQL Server - Släpp en utländsk nyckelbegränsning
Syntax ALTER TABLE [Tabellnamn] DROP CONSTRAINT [Foreign_Key_Constraint_Name] Exempel ALTER TABLE Medarbetare DROP CONSTRAINT Fk_Employee_DeptId
SQL Server - Lägg till en kontrollbegränsning till ett befintligt tablett
Syntax ALTER TABLE [Tabellnamn] ADD CONSTRAINT [Check_Constraint_Name] CHECK (Check_Condition) Exempel ALTER TABLE Medarbetare ADD CONSTRAINT CK_Employee_Salary CHECK (Lön> 0)
SQL Server - Drop Kontrollera en begränsning på ett befintligt bord
Syntax ALTER TABLE [Tabellnamn] DROP CONSTRAINT [Check_Constraint_Name] Exempel ALTER TABLE Medarbetare DROP CONSTRAINT CK_Employee_Salary
SQL Server - Lägg till en NULL eller NOT NULL-begränsning till ett befintligt bord
Syntax ALTER TABLE [Tabellnamn] ALTER COLUMN [Kolumnnamn] [DataType] [NULL ELLER INTE NULL] Exempel ALTER TABLE Medarbetare ALTER KOLUMN Kontakt Nej VARCHAR (10) NULL
SQL Server - Lägg till en standardbegränsning till ett befintligt bord
Syntax ALTER TABLE [Tabellnamn] ADD CONSTRAINT [DefaultConstraintName] DEFAULT [DefaultValue] FÖR [Kolumnnamn] Exempel ALTER TABLE Medarbetare ADD CONSTRAINT DF_Employee_Active DEFAULT 0 FOR AKTIVT
SQL Server - Släpp en standardbegränsning på ett befintligt bord
Syntax ALTER TABLE [Tabellnamn] DROP CONSTRAINT [Default_ConstraintName] Exempel ALTER TABLE Medarbetare DROP CONSTRAINT DF_Employee_Active
SQL Server - Ändra sorteringen av en befintlig kolumn
Syntax ALTER TABLE [Tabellnamn] ALTER COLUMN [Kolumnnamn] [DataType] COLLATE [CollationName]; Exempel ALTER TABLE Medarbetare ALTER COLUMN Medarbetare namn varchar (25) COLLATE Latin1_General_CI_AS NOT NULL;
SQL Server - Inaktivera en utländsk nyckelbegränsning
Syntax ALTER TABLE [Tabellnamn] NOCHECK CONSTRAINT [ConstraintName]; Exempel ALTER TABLE Medarbetare NOCHECK CONSTRAINT Fk_Employee_DeptId;
SQL Server - Inaktivera en kontrollnyckelbegränsning
Syntax ALTER TABLE [Tabellnamn] NOCHECK CONSTRAINT [ConstraintName]; Exempel ALTER TABLE Medarbetare NOCHECK CONSTRAINT CK_Employee_Salary;
SQL Server - Byt namn på en kolumn i ett bord
Syntax EXEC sp_RENAME Tabellnamn.OldColumnName, NewColumnName, Kolumnnamn Exempel EXEC sp_RENAME 'table_name.old_name', 'new_name', 'COLUMN'