SQL語句之AlterTable要學習哪些知識
在表格被建立在資料庫中后,我們常常會發現,這個表格的結構需要有所改變。
常見的改變如下: 加一個欄位 刪去一個欄位 改變欄位名稱 改變欄位的資料種類 以上列出的改變并不是所有可能的改變。ALTER TABLE 也可以被用來作其他的改變,例如改變主鍵定義。
ALTER TABLE 的語法如下: ALTER TABLE "table_name" [改變方式] [改變方式] 的詳細寫法會依我們想要達到的目標而有所不同。再以上列出的改變中,[改變方式] 如下: 加一個欄位: ADD "欄位 1" "欄位 1 資料種類" 刪去一個欄位: DROP "欄位 1" 改變欄位名稱: CHANGE "原本欄位名" "新欄位名" "新欄位名資料種類" 改變欄位的資料種類: MODIFY "欄位 1" "新資料種類" 以下我們用在CREATE TABLE 一頁建出的 customer 表格來當作例子: customer 表格 欄位名稱資料種類 First_Namechar(50) Last_Namechar(50) Addresschar(50) Citychar(50) Countrychar(25) Birth_Datedate 第一,我們要加入一個叫做 "gender" 的欄位。
這可以用以下的指令達成: ALTER table customer add Gender char (1) 這個指令執行后的表格架構是: customer 表格 欄位名稱資料種類 First_Namechar(50) Last_Namechar(50) Addresschar(50) Citychar(50) Countrychar(25) Birth_Datedate Genderchar (1) 接下來,我們要把 "Address" 欄位改名為 "Addr"。 這可以用以下的指令達成: ALTER table customer change Address Addr char(50) 這個指令執行后的表格架構是: customer 表格 欄位名稱資料種類 First_Namechar(50) Last_Namechar(50) Addrchar(50) Citychar(50) Countrychar(25) Birth_Datedate Genderchar (1) 再來,我們要將 "Addr" 欄位的資料種類改為 char(30)。
這可以用以下的指令達成: ALTER table customer modify Addr char(30) 這個指令執行后的表格架構是: customer 表格 欄位名稱資料種類 First_Namechar(50) Last_Namechar(50) Addrchar(50) Citychar(50) Countrychar(25) Birth_Datedate Genderchar (1) 最后,我們要刪除 "Gender" 欄位。 這可以用以下的指令達成: ALTER table customer drop Gender 這個指令執行后的表格架構是: customer 表格 欄位名稱資料種類 First_Namechar(50) Last_Namechar(50) Addrchar(30) Citychar(50) Countrychar(25) Birth_Datedate。
SQL語言中的修改語句ALTER和UPDATE有何區別
1、作用區別:
ALTRT用來修改基本表,是對表的結構進行操作,比如對字段的增加、刪除、修改類型
UPDATE用來修改表中的數據,修改某一行某一列的值
2、從本質上區分:
Alter是數據定義語言(Data difinition Language),在修改表的結構時,不需要Commit和Rollback。
Update是數據數據操作語言(Data manipulation Language),在修改數據值時,需要Commit和Rollback,否則提交的結構無效
擴展資料
Alter用法
1、刪除列
ALTER TABLE 【表名】 DROP 【列名】
2、增加列
ALTER TABLE 【表名】 ADD 【列名】 【類型】
3、重命名列
ALTER TABLE 【表名】 CHANGE 【列名】【新名】
4、修改表字段
alter table 表名稱 change 字段名稱 字段名稱 字段類型 [是否允許非空]
Update用法
修改表中字段
update 表名 set 字段=新值 where 主鍵=值
參考資料:Mysql官方參考手冊
alter index語句如何使用
alter index常用的語法如下:
(1)重建指定索引:
ALTER INDEX ind ON TA
REBUILD;
(2)重建全部索引:
ALTER INDEX ALL ON TA
REBUILD;
(3)禁用索引:
ALTER INDEX ALL ON TA
DISABLE;
(再次啟用使用REBUILD重建而不是ENABLED)
(4)指定參數重建索引:
ALTER INDEX ALL ON TA
REBUILD WITH(FILLFACTOR=80);
(5)指定參數修改索引:
ALTER INDEX ALL ON TA
SET(IGNORE_DUP_KEY = ON);
注意:alter index語法,不能用于修改索引定義,如添加或刪除列,或更改列的順序
Alter
Alter是數據庫SQL語言的修改語句,可以用來修改基本表,其一般表示格式為:
ALTER TABLE[改變方式]
基本介紹
數據庫SQL語言的修改語句,可以用來修改基本表,其一般表示格式為:
ALTER TABLE[改變方式]
改變方式:
· 加一個欄位: ADD "欄位 1" "欄位 1 資料種類"
· 刪去一個欄位: DROP "欄位 1"
· 改變欄位名稱: CHANGE "原本欄位名" "新欄位名" "新欄位名資料種類"
· 改變欄位的資料種類: MODIFY "欄位 1" "新資料種類"
修改方式
由上可以看出,修改基本表提供如下四種修改方式:
(1)ADD方式:用于增加新列和完整性約束,列的定義方式同CREARE TABLE語句中的列定義方式相同,其語法格式:
ALTER TABLE ADD |。由于使用此方式中增加的新列自動填充NULL值,所以不能為增加的新列指定NOT NULL約束。
(2)DROP方式:用于刪除指定的完整性約束條件,或刪指定的列,其語法格式為:
ALTER TABLE DROP []
ALTER TABLE DROP COLUMN
注釋:某些數據庫系統不允許這種在數據庫表中刪除列的方式 (DROP COLUMN )。
(3)CHANGE方式,用于修改某些列,其語法格式:
ALTER TABLE [表名] CHANGE TO
(4)MODIFY方式,用于修改某些列的數據類型,其語法格式:
ALTER TABLE [表名] MODIFY [列名] [數據類型]