鍍金池/ 教程/ 數(shù)據(jù)庫/ SQL ALTER TABLE 命令
SQL AND 和 OR 連接運算符
SQL 刪除數(shù)據(jù)庫
SQL 使用序列
SQL CONCAT 函數(shù)
SQL 使用視圖
SQL SELECT 語句
SQL 別名
SQL MAX 函數(shù)
SQL 創(chuàng)建表
SQL NULL 值
SQL 數(shù)據(jù)類型
SQL RAND 函數(shù)
SQL 臨時表
SQL INSERT 語句
SQL ALTER TABLE 命令
SQL 關系型數(shù)據(jù)庫管理系統(tǒng)
SQL SUM 函數(shù)
SQL 子查詢
SQL UPDATE 語句
SQL 表達式
SQL 操作符
SQL ORDER BY 子句
SQL WHERE 子句
SQL 對結果進行排序
SQL 注入
SQL AVG 函數(shù)
SQL 選擇數(shù)據(jù)庫,USE 語句
SQL 克隆數(shù)據(jù)表
SQL COUNT 函數(shù)
SQL 語法
SQL DELETE 語句
SQL 約束
SQL 刪除表
SQL TOP、LIMIT 和 ROWNUM 子句
SQL 日期函數(shù)
SQL TRUNCATE TABLE 命令
SQL DISTINCT 關鍵字
SQL 處理重復數(shù)據(jù)
SQL 使用連接
SQL 索引
SQL 事務
SQL GROUP BY 子句
SQL HAVING 子句
SQL MIN 函數(shù)
SQL 概覽
SQL SQRT 函數(shù)
SQL LIKE 子句
SQL 通配符
SQL UNION 子句
SQL 數(shù)據(jù)庫
SQL 創(chuàng)建數(shù)據(jù)庫

SQL ALTER TABLE 命令

SQL ALTER TABLE 命令用于添加、刪除或者更改現(xiàn)有數(shù)據(jù)表中的列。

你還可以用 ALTER TABLE 命令來添加或者刪除現(xiàn)有數(shù)據(jù)表上的約束。

語法:

使用 ALTER TABLE 在現(xiàn)有的數(shù)據(jù)表中添加新列的基本語法如下:

ALTER TABLE table_name ADD column_name datatype;

使用 ALTER TABLE 在現(xiàn)有的數(shù)據(jù)表中刪除列的基本語法如下:

ALTER TABLE table_name DROP COLUMN column_name;

使用 ALTER TABLE 更改現(xiàn)有的數(shù)據(jù)表中列的數(shù)據(jù)類型的基本語法如下:

ALTER TABLE table_name MODIFY COLUMN column_name datatype;

使用 ALTER TABLE 給某列添加 NOT NULL 約束 的基本語法如下:

ALTER TABLE table_name MODIFY column_name datatype NOT NULL;

使用 ALTER TABLE 給數(shù)據(jù)表添加 唯一約束 的基本語法如下:

ALTER TABLE table_name 
ADD CONSTRAINT MyUniqueConstraint UNIQUE(column1, column2...);

使用 ALTER TABLE 給數(shù)據(jù)表添加 CHECK 約束 的基本語法如下:

ALTER TABLE table_name 
ADD CONSTRAINT MyUniqueConstraint CHECK (CONDITION);

使用 ALTER TABLE 給數(shù)據(jù)表添加 主鍵約束 的基本語法如下:

ALTER TABLE table_name 
ADD CONSTRAINT MyPrimaryKey PRIMARY KEY (column1, column2...);

使用 ALTER TABLE 從數(shù)據(jù)表中 刪除約束 的基本語法如下:

ALTER TABLE table_name 
DROP CONSTRAINT MyUniqueConstraint;

如果你在使用 MySQL,代碼應當如下:

ALTER TABLE table_name 
DROP INDEX MyUniqueConstraint;

使用 ALTER TABLE 從數(shù)據(jù)表中 刪除主鍵約束 的基本語法如下:

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 |
+----+----------+-----+-----------+----------+

下面的示例展示了如何在現(xiàn)有的表中添加新的一列:

ALTER TABLE CUSTOMERS ADD SEX char(1);

現(xiàn)在,CUSTOMERS 已經(jīng)被更改了,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 |
+----+---------+-----+-----------+----------+------+

下面的示例展示了如何從 CUSTOMERS 表中刪除 SEX 列:

ALTER TABLE CUSTOMERS DROP SEX;

現(xiàn)在,CUSTOMERS 已經(jīng)被更改了,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 |
+----+---------+-----+-----------+----------+
上一篇:SQL 通配符