成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網
最全最豐富的資訊網站

oracle數據庫怎么修改字段

在oracle中,可以利用“ALTER TABLE MODIFY”語句來修改字段,語法為“ALTER TABLE 表名 MODIFY 字段名 需要執行的操作;”;常用操作有:修改列的可見性、更改列的默認值、修改虛擬列的表達式等。

oracle數據庫怎么修改字段

本教程操作環境:Windows7系統、Oracle 11g版、Dell G3電腦。

oracle數據庫怎么修改字段

在oracle中,可以利用“ALTER TABLE MODIFY”語句來修改字段,更改現有字段的定義。

要更改表中列的定義,請按如下所示使用ALTER TABLE MODIFY列語法:

ALTER TABLE 表名  MODIFY 字段名 需要執行的操作;

語句很直接。要修改表的列,需要指定要執行的列名,表名和操作。

Oracle允許執行多種操作,但以下是主要常用的操作:

  • 修改列的可見性

  • 允許或不允許NULL值

  • 縮短或擴大列的大小

  • 更改列的默認值

  • 修改虛擬列的表達式

要修改多個列,請使用以下語法:

ALTER TABLE 表名 MODIFY (     字段名1 action,     字段名2 action,     ... );

Oracle ALTER TABLE MODIFY列示例

首先,為演示創建一個名為accounts的新表:

-- 12c語法 CREATE TABLE accounts (     account_id NUMBER GENERATED BY DEFAULT AS IDENTITY,     first_name VARCHAR2(25) NOT NULL,     last_name VARCHAR2(25) NOT NULL,     email VARCHAR2(100),     phone VARCHAR2(12) ,     full_name VARCHAR2(51) GENERATED ALWAYS AS(              first_name || ' ' || last_name     ),     PRIMARY KEY(account_id) );

其次,向accounts表中插入一些行:

INSERT INTO accounts(first_name,last_name,phone) VALUES('Trinity',        'Knox',        '410-555-0197');   INSERT INTO accounts(first_name,last_name,phone) VALUES('Mellissa',        'Porter',        '410-555-0198');   INSERT INTO accounts(first_name,last_name,phone) VALUES('Leeanna',        'Bowman',        '410-555-0199');

第三,通過使用下面的SELECT語句驗證插入操作:

SELECT     * FROM     accounts;

執行上面查詢語句,得到以下結果 –

oracle數據庫怎么修改字段

1. 修改列的可見性

在Oracle 12c中,可以將表列定義為不可見或可見。不可見列不可用于查詢,如:

SELECT     * FROM     table_name;

或者,

DESCRIBE table_name;

都是查到不到不可見列的。

但是,可以通過在查詢中顯式指定不可見列來查詢:

SELECT     invisible_column_1,     invisible_column_2 FROM     table_name;

默認情況下,表列是可見的。可以在創建表或使用ALTER TABLE MODIFY列語句時定義不可見列。

例如,以下語句使full_name列不可見:

ALTER TABLE accounts  MODIFY full_name INVISIBLE;

執行再次查詢表中數據,得到以下結果 –

oracle數據庫怎么修改字段

以下語句返回accounts表除了full_name列以外的所有列中返回數據:

SELECT     * FROM     accounts;

這是因為full_name列是不可見的。要將列從不可見變為可見,請使用以下語句:

ALTER TABLE accounts  MODIFY full_name VISIBLE;

2. 允許或不允許null示例

以下語句將email列更改為接受非空(not null)值:

ALTER TABLE accounts  MODIFY email VARCHAR2( 100 ) NOT NULL;

但是,Oracle發出以下錯誤:

SQL Error: ORA-02296: cannot enable (OT.) - null values found

因為當將列從可為null改為not null時,必須確保現有數據符合新約束(也就是說,如果原來數據中NULL是不行的)。

為了解決這個問題,首先更新email列的值:

UPDATE      accounts SET      email = LOWER(first_name || '.' || last_name || '@oraok.com') ;

請注意,LOWER()函數將字符串轉換為小寫字母。

然后改變email列的約束:

ALTER TABLE accounts  MODIFY email VARCHAR2( 100 ) NOT NULL;

現在,它應該就會按預期那樣工作了。

3. 擴大或縮短列示例的大小

假設要添加國際代碼到phone列上,比如:前綴加上+86。 在修改列的值之前,必須使用以下語句擴大phone列的大小:

ALTER TABLE accounts  MODIFY phone VARCHAR2( 24 );

現在,我們可以更新電話號碼的數據了:

UPDATE     accounts SET     phone = '+86 ' || phone;

以下語句驗證更新:

SELECT     * FROM     accounts;

執行上面查詢語句結果中,應該可以看到原電話號碼前綴有加上+86的國際區號了。

oracle數據庫怎么修改字段

要縮短列的大小,請確保列中的所有數據都符合新的大小。

例如,嘗試將phone列的大小縮減到12個字符:

ALTER TABLE accounts  MODIFY phone VARCHAR2( 12 );

Oracle數據庫發出以下錯誤:

SQL Error: ORA-01441: cannot decrease column length because some  value is too big

要解決這個問題,首先,應該從電話號碼中刪除國際代碼(即:+86):

UPDATE     accounts SET     phone = REPLACE(         phone,         '+86 ',         ''     );

REPLACE()函數用一個新的子字符串替換一個子字符串。在這種情況下,它將用空字符串替換+86

然后縮短phone列的大小:

ALTER TABLE accounts  MODIFY phone VARCHAR2( 12 );

4. 修改虛擬列

假設按以下兩列的格式填寫全名:

last_name, first_name

為此,可以更改虛擬列full_name的表達式,如下所示:

ALTER TABLE accounts  MODIFY full_name VARCHAR2(52)  GENERATED ALWAYS AS (last_name || ', ' || first_name);

以下語句驗證修改:

SELECT     * FROM     accounts;

執行上面查詢語句,可以看到以下結果

oracle數據庫怎么修改字段

5. 修改列的默認值

添加一個名為status的新列,默認值為1accounts表中。參考以下語句 –

ALTER TABLE accounts ADD status NUMBER( 1, 0 ) DEFAULT 1 NOT NULL ;

當執行了該語句,就會將accounts表中的所有現有行的status列中的值設置為1

要將status列的默認值更改為0,請使用以下語句:

ALTER TABLE accounts  MODIFY status DEFAULT 0;

可以在accounts表中添加一個新行來檢查status列的默認值是0還是1

INSERT INTO accounts ( first_name, last_name, email, phone ) VALUES ( 'Julia',          'Madden',          'julia.madden@oraok.com',          '410-555-0200' );

現在,查詢accounts表中的數據:

SELECT   * FROM   accounts;

執行上面查詢語句,應該看類似下面的結果

oracle數據庫怎么修改字段

正如所看到的那樣,ID4的賬戶的status列的值是0

推薦教程:《Oracle教程》

贊(0)
分享到: 更多 (0)
?
網站地圖   滬ICP備18035694號-2    滬公網安備31011702889846號
激情综合色五月丁香六月欧美| 精品久久国产综合婷婷五月| 国产老熟女八AV| 国语做受对白XXXXX在线| 激情欧美成人久久综合| 久久99精品久久久久子伦 | 日韩人妻中文字幕2021视频| 日本在线观看母与子| 私人微信放款24小时在线| 无码中文字幕在线播放2| 亚洲国产精品无码久久一区二区| 亚洲色成人一区二区三区小说| 中国又粗又大XXXXBBBB| JAPAN色系VIDEOS护士| 豆奶视频在线观看免费高清版| 国产精品福利自产拍在线观看| 狠狠色噜噜狠狠狠狠97| 老头猛的挺进她莹莹的体导演是谁 | 亚州熟妇无码AV线播放| 亚洲最大AV无码网站| 99精品国产在热久久无码| 成人每日更新在线不卡| 国产午夜福利短视频在线观看 | 野花日本免费完整版高清版| GOGO人体大胆瓣开下部L| 国产 国语对白 露脸| 好男人影视官网在线WWW| 亂倫近親相姦中文字幕| 日本在线观看母与子| 亚洲AV成人一区二区电影在线| 夜里18款禁用软件APP| YIN荡到骨子里的SAO货| 国产美女视频免费观看| 老司机久久99久久精品播放免费| 日韩人妻无码精品系列 | 影音先锋AV天堂| 波多野结衣AV无码久久一区| 国产午夜精品一区二区三区老 | 337P日本欧洲亚洲大胆裸体艺| 肥胖孕妇BBWBBWBBW| 精品人在线二线三线区别| 欧美性XXXX狂欢老少配| 无码中文AV波多野结衣| 又湿又黄裸乳漫画无遮挡网站| 成人片黄网站A毛片免费| 狠狠躁夜夜躁人爽碰88A| 欧美性猛交╳XXX乱大交| 亚洲AⅤ永久无码精品| 2018一本久道在线线观看| 国产精品成熟老女人视频| 麻花豆传媒剧国产MV在线上-| 他用嘴巴含着我奶头吸怎么办| 野花日本免费完整版高清版| 父母儿女一家换着玩的句子| 久久无码成人影片| 天堂AV无码大芭蕉伊人AV孕妇| 英语老师乖乖挽起裙子的意思| 国产AV无码专区亚洲精品 | 约附近的寂寞妇女| 公和我做好爽添厨房| 联系附近成熟妇女| 无码日韩人妻AV一区免费| 51精品人人搡人妻人人玩| 国产丝袜无码一区二区三区视频| 欧美黑人性暴力猛交喷水黑人巨大| 西西人体444WWW大胆无码视频| 99精品国产在热久久无毒不卡 | 亚洲成AV人片在WWW色猫咪| 被几个人摁住玩弄隐私作文| 久久狠狠色噜噜狠狠狠狠97| 熟女亚洲综合精品伊人久久| 尤物193在线人妻精品免费| 国产精品免费高清在线观看| 欧美日韩一区精品视频一区二| 亚欧成人中文字幕一区| 锕锕锕锕锕锕~好痛APP下载| 久久久久久AV无码免费网站下载| 无码A级毛片日韩精品| BGMBGMBGM欧美老妇| 久久精品99久久香蕉国产| 无码AV免费网站| XXXⅩ少妇少妇XXXX范冰冰| 久久久久亚洲AV无码观看| 掀开老师的裙子挺进去| 波多野结衣一二三区AV高清| 巨大黑人极品VIDEOS精品| 亚洲AⅤ无码日韩AV无码网站| 成人精品一区二区三区网站| 免费拗女网站1300部| 亚洲精品AⅤ在线观看| 国产妇女馒头高清泬20P多毛| 秋霞人妻无码中文字幕| 中国MACBOOKPRO高清| 好男人影视官网在线WWW| 天天狠天天透天干天天怕∴| 办公室的交易HD在线观看| 毛片TV网站无套内射TV网站 | 久久精品国产亚洲无删除| 无码国内精品久久人妻| 波多野结衣的AV电影| 男女作爱免费网站| 一本到在线高清视频| 护士HD老师FREE性ⅩⅩⅩ| 无码夜色一区二区三区| 粉嫩被黑人两根粗大猛烈进出视频| 欧美极品少妇XXX| 中国少妇无码专区| 久久精品人妻一区二区三区一 | 久久精品免费观看国产| 亚洲AV日韩AV高潮喷潮无码天| 国产AV麻豆MAG剧集| 日本熟妇色XXXXX日本免费看| A级毛片高清免费视频在线播放| 老头握住校花的双乳| 亚洲熟女www一区二区三区| 黑人GAY大长雕TUBE| 洗澡BBWBBWBBWBBW毛| 国产粉嫩馒头无套内在线观看免费| 日韩视频一二三区2021| 成年免费手机毛片免费看无码| 男人J桶进女人P无遮挡全过程| 用嘴巴吃鸡的好处| 老师办公室狂肉校花H| 一二三四免费观看在线影视大全| 久久99精品免费一区二区| 亚洲裸男GAY自慰网站| 精品欧洲AV无码一区二区| 亚洲精品国产欧美一二区| 教室停电了校草挺进我体内 | 五月丁香六月缴情基地| 国产精品毛片久久久久久久| 无码人妻一区二区三区在线视频| 国产AV一区二区三区最新精品| 少妇极品丰满人妻无码视频| 东北老熟女疯狂作爱视频| 色欲A∨无码蜜臀AV免费播| 粉嫩小泬无遮挡久久久久久小说| 色老太BBWBBWBBW高潮| 国产白丝JK捆绑束缚调教视频| 婷婷综合久久狠狠色成人网| 国产A在亚洲线播放| 午夜A级成人免费毛片| 国精产品一区二区三区有限 | BGMBGMBGM毛多多视频1| 人人澡人人妻人人爽少妇| 吃了继兄开的药后我做的梦更长了 | 麻花传媒剧国产MV高清播放| .一区二区三区在线 | 欧洲| 欧美成人精品在线观看| 啊轻点灬大JI巴太粗太长了欧美| 揉着我的奶从后面进去| 国产成年无码久久久久下载| 无码免费无线观看在线视| 国色天香在线视频免费观看| 亚洲毛片ΑV无线播放一区 | 中文字幕亚洲欧美日韩在线不卡 | 国产VIVODESHD精品| 亚洲AV成人无码影视网| 精品国产乱码久久久久APP下载| 亚洲综合无码AV一区二区| 欧产日产国产精品精品| 成人欧美一区二区三区视频| 无码抽搐高潮喷水流白浆| 黑人巨大VIDEOS极度另类| 伊人久久大香线蕉AV一区| 欧美人禽猛交乱配视频网站| 成人动漫在线观看| 新CHINESE无套小帅KTV| 久久国产精品娇妻素人| 99久久精品国产综合| 少妇ⅩXXOOOZZXXHD| 含羞草传媒免费进入APP老版本| 亚洲中文字幕永久在线不卡 | AV网站免费线看精品| 少妇伦子伦精品无码STYLES| 国产小受呻吟GV视频在线观看| 亚洲一区二区无码成人AV| 欧美人与动XXXXZ0OZ| 国产国拍亚洲精品MV在线观看| 亚洲精品亚洲人成在线| 女被男狂揉吃奶胸60分钟视频| 绯色av一区二区三区蜜臀| 亚洲AV无码专区国产乱码波多野| 巨大黑人一级毛片| 大乳丰满人妻中文字幕日本| 亚洲顶级裸体AV片| 男阳茎进女阳道啪啪| 国产成人 综合 亚洲欧美| 亚洲午夜无码片在线观看影院| 琴乳液狂飙却被空吸入口中| 国产麻豆一精品一AV一免费| 岳丰满多毛的大隂户| 色五月五月丁香亚洲综合网| 激情都市 校园 人妻 武侠| ACTION对魔忍| 新婚之夜玩弄人妻系列| 男男GV在线观看| 国产乱妇乱子视频在播放| 中文字幕三级人妻无码视频 | 欧洲无线一线二线三W955|