首發微信公眾號:SQL資料庫運維
原文鏈接:https://mp.weixin.qq.com/s?__biz=MzI1NTQyNzg3MQ==&mid=2247485212&idx=1&sn=450e9e94fa709b5eeff0de371c62072b&chksm=ea37536cdd40da7a94e165ce4b4c6e70fb1360d51bed4b3566eee438b587fa231315d0a5a5b3&token=1491694448&lang=zh_CN#rd
日常作業中,很多情況下都會遇到對原資料表的修改,特別是修改資料欄位的長度,會經常的遇到,那么要修改現有表的結構或者新增欄位或修改欄位長度,就可以使用ALTER TABLE陳述句了,基礎語法如下:
ALTER TABLE table_name action;
ALTER TABLE陳述句可用來:
-
添加一個或多個列
-
修改列定義
-
洗掉一列或多列
-
重命名列名稱
-
重命名表名稱
在之前我們新建了一個stuinfo的資料表,新建資料表參考鏈接:Oracle中新建資料表的兩種方法(點擊文字可跳轉),下面將使用這個表進行ALTER TABLE陳述句應用的相關操作演示,
原表資訊如下:

1. Oracle ALTER TABLE ADD列示例
將新列添加到stuinfo表中,可以使用以下語法:
ALTER TABLE table_name ADD column_name type constraint;
舉例,將一個列名為birthdate的新列添加到stuinfo表中:
ALTER TABLE JT_CS.STUINFO ADD birthdate DATE ;
添加新列后的結果顯示

如果需要同時向stuinfo表中添加多列,可以按如下所示語法將新列置于括號內:
ALTER TABLE table_name ADD ( column_name type constraint, column_name type constraint, ... );
舉例,將phone、email兩列添加到stuinfo表中:
ALTER TABLE JT_CS.STUINFO ADD ( phone VARCHAR(20), email VARCHAR(100) );
添加新列后的結果顯示

注意:請謹記在添加新列時,如果添加新列時需要使用NOT NULL約束,則需要保證在約束添加前資料表必須為空,不然將無法添加新列(提示如下圖);不能添加表中已經存在的列,不然會導致錯誤,另外,ALTER TABLE ADD列陳述句在表的末尾添加新列,Oracle沒有提供直接的方法來允許您像其他資料庫系統(如MySQL)那樣指定新列的位置,
由于之前新建的資料表已經插入了資料,為了方便操作,這里我就不添加約束了,如果想要添加,在DATA資料型別后邊添加NOT NULL即可,

點擊關注“SQL資料庫運維”,后臺或瀏覽至公眾號文章底部點擊“發訊息”回復關鍵字:進群,帶你進入高手如云的技術交流群,后臺回復關鍵字:SQL,獲取學習資料,
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/537758.html
標籤:其他
下一篇:分頁查詢總結
