ALTER TABLE
Add Column(s)
Section titled “Add Column(s)”ALTER TABLE EmployeesADD StartingDate date NOT NULL DEFAULT GetDate(), DateOfBirth date NULLThe above statement would add columns named StartingDate which cannot be NULL with default value as current date and DateOfBirth which can be NULL in Employees table.
Drop Column
Section titled “Drop Column”ALTER TABLE EmployeesDROP COLUMN salary;This will not only delete information from that column, but will drop the column salary from table employees(the column will no more exist).
Add Primary Key
Section titled “Add Primary Key”ALTER TABLE EMPLOYEES ADD pk_EmployeeID PRIMARY KEY (ID)This will add a Primary key to the table Employees on the field ID. Including more than one column name in the parentheses along with ID will create a Composite Primary Key. When adding more than one column, the column names must be separated by commas.
ALTER TABLE EMPLOYEES ADD pk_EmployeeID PRIMARY KEY (ID, FName)Drop Constraint
Section titled “Drop Constraint”ALTER TABLE EmployeesDROP CONSTRAINT DefaultSalaryThis Drops a constraint called DefaultSalary from the employees table definition.
Note:- Ensure that constraints of the column are dropped before dropping a column.
Alter Column
Section titled “Alter Column”ALTER TABLE EmployeesALTER COLUMN StartingDate DATETIME NOT NULL DEFAULT (GETDATE())This query will alter the column datatype of StartingDate and change it from simple date to datetime and set default to current date.
Add Constraint
Section titled “Add Constraint”ALTER TABLE EmployeesADD CONSTRAINT DefaultSalary DEFAULT ((100)) FOR [Salary]This adds a constraint called DefaultSalary which specifies a default of 100 for the Salary column.
A constraint can be added at the table level.
Types of constraints
- Primary Key - prevents a duplicate record in the table
- Foreign Key - points to a primary key from another table
- Not Null - prevents null values from being entered into a column
- Unique - uniquely identifies each record in the table
- Default - specifies a default value
- Check - limits the ranges of values that can be placed in a column
To learn more about constraints, see the Oracle documentation.
Syntax
Section titled “Syntax”- ALTER TABLE [table_name] ADD [column_name] [datatype]