教程 > sql 教程 > 阅读:45

sql alter table 语句——迹忆客-ag捕鱼王app官网

sql alter table命令用于添加、删除或修改现有表中的列。还可以使用 alter table 命令在现有表上添加和删除各种约束。

语法

在现有表中添加新列的 alter table 命令的基本语法如下。

alter table table_name add column_name datatype;

在现有表中删除列的 alter table 命令的基本语法如下。

alter table table_name drop column column_name;

用于更改表中列的数据类型的 alter table 命令的基本语法如下。

alter table table_name modify column column_name datatype;

向表中的列添加not null约束的 alter table 命令的基本语法如下。

alter table table_name modify column_name datatype not null;

alter table 将unique 约束添加到一个表中的基本语法如下。

alter table table_name 
add constraint myuniqueconstraint unique(column1, column2...);

向表添加检查约束的 alter table 命令的基本语法如下。

alter table table_name 
add constraint myuniqueconstraint check (condition);

向表中添加主键约束的 alter table 命令的基本语法如下。

alter table table_name 
add constraint myprimarykey primary key (column1, column2...);

从表中删除约束的 alter table 命令的基本语法如下。

alter table table_name 
drop constraint myuniqueconstraint;

如果使用的是 mysql,则代码如下

alter table table_name 
drop index myuniqueconstraint;

从表中删除 primary key约束的 alter table 命令的基本语法如下。

alter table table_name 
drop constraint myprimarykey;

如果使用的是 mysql,则代码如下

alter table table_name 
drop primary key;

示例

customers 表的数据如下

 ---- ---------- ----- ----------- ---------- 
| id | name     | age | address   | salary   |
 ---- ---------- ----- ----------- ---------- 
|  1 | ramesh   |  32 | ahmedabad |  2000.00 |
|  2 | khilan   |  25 | delhi     |  1500.00 |
|  3 | kaushik  |  23 | kota      |  2000.00 |
|  4 | chaitali |  25 | mumbai    |  6500.00 |
|  5 | hardik   |  27 | bhopal    |  8500.00 |
|  6 | komal    |  22 | mp        |  4500.00 |
|  7 | muffy    |  24 | indore    | 10000.00 |
 ---- ---------- ----- ----------- ---------- 

以下是向现有表添加新列的示例

alter table customers add sex char(1);

现在,customers 表已更改,select 语句将输出以下内容。

 ---- --------- ----- ----------- ---------- ------ 
| id | name    | age | address   | salary   | sex  |
 ---- --------- ----- ----------- ---------- ------ 
|  1 | ramesh  |  32 | ahmedabad |  2000.00 | null |
|  2 | ramesh  |  25 | delhi     |  1500.00 | null |
|  3 | kaushik |  23 | kota      |  2000.00 | null |
|  4 | kaushik |  25 | mumbai    |  6500.00 | null |
|  5 | hardik  |  27 | bhopal    |  8500.00 | null |
|  6 | komal   |  22 | mp        |  4500.00 | null |
|  7 | muffy   |  24 | indore    | 10000.00 | null |
 ---- --------- ----- ----------- ---------- ------ 

以下是从现有表中删除 sex 列的示例。

alter table customers drop sex;

现在,customers 表已更改,以下是 select 语句的输出。

 ---- --------- ----- ----------- ---------- 
| id | name    | age | address   | salary   |
 ---- --------- ----- ----------- ---------- 
|  1 | ramesh  |  32 | ahmedabad |  2000.00 |
|  2 | ramesh  |  25 | delhi     |  1500.00 |
|  3 | kaushik |  23 | kota      |  2000.00 |
|  4 | kaushik |  25 | mumbai    |  6500.00 |
|  5 | hardik  |  27 | bhopal    |  8500.00 |
|  6 | komal   |  22 | mp        |  4500.00 |
|  7 | muffy   |  24 | indore    | 10000.00 |
 ---- --------- ----- ----------- ---------- 

查看笔记

扫码一下
查看教程更方便
网站地图