SQL ALTER TABLE
Structured Query Language(SQL)中的ALTER TABLE语句允许您添加、修改和删除现有表的列。此语句还允许数据库用户在现有表上添加和删除各种SQL约束。
使用此语句,任何用户也可以更改表的名称。
SQL中ALTER TABLE ADD列的语句
在许多情况下,您可能需要在现有表中添加列。您可以使用ADD关键字轻松添加单个和多个列,而无需再次创建整个表或数据库。
SQL中ALTER TABLE ADD列语句的语法
ALTER TABLE table_name ADD column_name column-definition;
上述语法只允许您向现有表中添加一个列。如果您想在单个SQL语句中向表中添加多个列,则使用以下语法:
ALTER TABLE table_name
ADD (column_Name1 column-definition,
column_Name2 column-definition,
.....
column_NameN column-definition);
在SQL中使用ALTER TABLE ADD Column语句的示例
在这里,我们提供了以下两个不同的SQL示例,它们将帮助您了解如何使用ALTER TABLE语句向现有表中添加单个和多个列:
示例1: 让我们以一个名为 Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表格: Cars
- 假设你想在上面的表格中添加新的列Car_Model。为此,你需要在SQL中输入以下查询:
ALTER TABLE Cars ADD Car_Model Varchar(20);
这个语句将向Cars表中添加Car_Model列。
示例2: 让我们以一个叫做 Employee的表为例:
Emp_Id | Emp_Name | Emp_Salary | Emp_City |
---|---|---|---|
201 | Abhay | 25000 | Goa |
202 | Ankit | 45000 | Delhi |
203 | Bheem | 30000 | Goa |
204 | Ram | 29000 | Goa |
205 | Sumit | 40000 | Delhi |
表: 雇员
- 假设,您要在上述雇员表中添加两列, Emp_ContactNo. 和 Emp_EmailID, 对于此操作,您需要在SQL中输入以下查询:
ALTER TABLE Employee ADD ( Emp_ContactNo. Number(13), Emp_EmailID varchar(50) ;
这个语句将向Employee表中添加Emp_ContactNo.和Emp_EmailID两列。
在SQL中使用ALTER TABLE MODIFY Column语句
MODIFY关键字用于更改现有表的列定义。
ALTER TABLE MODIFY Column语句的语法
ALTER TABLE table_name MODIFY column_name column-definition;
这种语法只允许您修改现有表的单个列。如果您想在单个SQL语句中修改表的多个列,请使用以下语法:
ALTER TABLE table_name
MODIFY (column_Name1 column-definition,
column_Name2 column-definition,
.....
column_NameN column-definition);
ALTER TABLE MODIFY列语句在SQL中的示例
这里,我们列举了以下两个不同的SQL示例,它们将帮助您了解如何使用ALTER TABLE语句修改现有表的单个列和多个列:
示例1: 让我们以一个名为 Cars的表的示例为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表格: 汽车
- 假设,您想要修改上述表格中的 Car_Color 列的数据类型。为此,您需要在SQL中输入以下查询:
ALTER TABLE Cars ADD Car_Color Varchar(50);
示例 2: 让我们来看一个名为 Employee 的表的示例:
Emp_Id | Emp_Name | Emp_Salary | Emp_City |
---|---|---|---|
201 | Abhay | 25000 | Goa |
202 | Ankit | 45000 | Delhi |
203 | Bheem | 30000 | Goa |
204 | Ram | 29000 | Goa |
205 | Sumit | 40000 | Delhi |
表: 员工
- 假设,您想要修改上述员工表的两个列的数据类型 Emp_ContactNo. 和 Emp_EmailID 。为此,您需要在SQL中键入以下查询语句:
ALTER TABLE Employee ADD ( Emp_ContactNo. Int, Emp_EmailID varchar(80) ;
SQL中ALTER TABLE DROP列语句
在许多情况下,您可能需要从现有表中删除列。您可以使用DROP关键字删除列,而不是删除整个表或数据库。
SQL中ALTER TABLE DROP列语句的语法
ALTER TABLE table_name DROP Column column_name ;
SQL中ALTER TABLE DROP Column语句的示例
在这里,我们将介绍两个不同的SQL示例,这将帮助您了解如何使用ALTER TABLE语句从现有表中删除列:
示例1: 让我们以一个名为 Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表格: 汽车
- 假设,你想从上面的表格中删除Car_Color列。为此,你需要在SQL中输入以下查询语句:
ALTER TABLE Cars DROP COLUMN Car_Color ;
- 让我们使用以下语句来检查表中是否删除了Car_Color列:
SELECT * FROM Cars;
Car Name | Car Cost |
---|---|
Hyundai Creta | 10,85,000 |
Hyundai Venue | 9,50,000 |
Hyundai i20 | 9,00,000 |
Kia Sonet | 10,00,000 |
Kia Seltos | 8,00,000 |
Swift Dezire | 7,95,000 |
表格: 汽车
示例2: 让我们以一个名为 员工: 的表格为例。
Emp_Id | Emp_Name | Emp_Salary | Emp_City |
---|---|---|---|
201 | Abhay | 25000 | Goa |
202 | Ankit | 45000 | Delhi |
203 | Bheem | 30000 | Goa |
204 | Ram | 29000 | Goa |
205 | Sumit | 40000 | Delhi |
表: 员工
- 假设你想从上述员工表中删除 Emp_Salary和Emp_City 列。为此,您需要在SQL中键入以下两个不同的查询:
ALTER TABLE Cars DROP COLUMN Emp_Salary ;
ALTER TABLE Cars DROP COLUMN Emp_City ;
在SQL中使用ALTER TABLE RENAME Column语句更改列的名称
RENAME关键字用于更改现有表的列或字段的名称。
ALTER TABLE RENAME Column语句在SQL中的语法
ALTER TABLE table_name RENAME COLUMN old_name to new_name;
在SQL中更改列名的ALTER TABLE RENAME Column语句示例
在这里,我们介绍了两个不同的SQL示例,可以帮助您使用ALTER TABLE语句更改现有表的列名:
示例1: 让我们以一个名为 Cars 的表为例:
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表格: 汽车
- 假设你想要修改以上汽车表格的 Car_Color 列名。为此,你需要在SQL中输入以下查询语句:
ALTER TABLE Cars RENAME COLUMN Car_Color to Colors;
这个语句将更改Cars表的列名。要查看更改内容,您需要输入以下查询:
SELECT * FROM Cars;
Car Name | Car Color | Car Cost |
---|---|---|
Hyundai Creta | White | 10,85,000 |
Hyundai Venue | White | 9,50,000 |
Hyundai i20 | Red | 9,00,000 |
Kia Sonet | White | 10,00,000 |
Kia Seltos | Black | 8,00,000 |
Swift Dezire | Red | 7,95,000 |
表格: 汽车
例子2: 让我们来看一个名为表格的例子 Employee:
Emp_Id | Emp_Name | Emp_Salary | Emp_City |
---|---|---|---|
201 | Abhay | 25000 | Goa |
202 | Ankit | 45000 | Delhi |
203 | Bheem | 30000 | Goa |
204 | Ram | 29000 | Goa |
205 | Sumit | 40000 | Delhi |
表格: 员工
- 假设您想要更改上述员工表中 Emp_City 列的名称。为此,您需要在SQL中键入以下查询:
ALTER TABLE Employee RENAME COLUMN Emp_City to Emp_Address;
这个语句将会修改Employee表的一个列的名称。要看到这些变更,你需要输入以下查询:
SELECT * FROM Employee;
Emp_Id | Emp_Name | Emp_Salary | Emp_Address |
---|---|---|---|
201 | Abhay | 25000 | Goa |
202 | Ankit | 45000 | Delhi |
203 | Bheem | 30000 | Goa |
204 | Ram | 29000 | Goa |
205 | Sumit | 40000 | Delhi |
表格: 员工