在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美

當前位置:雨林木風下載站 > 應用軟件教程 > 詳細頁面

Oracle數據庫表與視圖

Oracle數據庫表與視圖

更新時間:2025-10-19 文章作者:未知 信息來源:網絡 閱讀次數:

數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應...
數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應用程序彼此獨立的數據集合。
 Oracle數據庫數據對象中最基本的是表和視圖,其他還有約束、序列、函數、存儲過程、包、觸發器等。對數據庫的操作可以基本歸結為對數據對象的操作,理解和掌握Oracle數據庫對象是學習Oracle的捷徑。
  表和視圖
  Oracle中表是數據存儲的基本結構。ORACLE8引入了分區表和對象表,ORACLE8i引入了臨時表,使表的功能更強大。視圖是一個或多個表中數據的邏輯表達式。本文我們將討論怎樣創建和管理簡單的表和視圖。
  管理表
  表可以看作有行和列的電子數據表,表是關系數據庫中一種擁有數據的結構。用CREATE TABLE語句建立表,在建立表的同時,必須定義表名,列,以及列的數據類型和大小。例如:
    CREATE TABLE products
  ( PROD_ID NUMBER(4),
   PROD_NAME VAECHAR2(20),
   STOCK_QTY NUMBER(5,3)
  ); 
  這樣我們就建立了一個名為products的表, 關鍵詞CREATE TABLE后緊跟的表名,然后定義了三列,同時規定了列的數據類型和大小。
  在創建表的同時你可以規定表的完整性約束,也可以規定列的完整性約束,在列上普通的約束是NOT NULL,關于約束的討論我們在以后進行。
  在建立或更改表時,可以給表一個缺省值。缺省值是在增加行時,增加的數據行中某一項值為null時,oracle即認為該值為缺省值。
  下列數據字典視圖提供表和表的列的信息:
   . DBA_TABLES
   . DBA_ALL_TABLES
   . USER_TABLES
   . USER_ALL_TABLES
   . ALL_TABLES
   . ALL_ALL_TABLES
   . DBA_TAB_COLUMNS
   . USER_TAB_COLUMNS
   . ALL_TAB_COLUMNS
  表的命名規則
  表名標識一個表,所以應盡可能在表名中描述表,oracle中表名或列名最長可以達30個字符串。表名應該以字母開始,可以在表名中包含數字、下劃線、#、$等。
  從其它表中建立表
  可以使用查詢從基于一個或多個表中建立表,表的列的數據類型和大小有查詢結果決定。建立這種形式的表的查詢可以選擇其他表中所有的列或者只選擇部分列。在CREATE TABLE語句中使用關鍵字AS,例如:
SQL>CREATE TABLE emp AS SELECT * FROM employee
TABLE CREATED
SQL> CREATE TABLE Y AS SELECT * FROM X WHERE no=2 
  需要注意的是如果查詢涉及LONG數據類型,那么CREATE TABLE....AS SELECT....將不會工作。
  更改表定義
  在建立表后,有時候我們可能需要修改表,比如更改列的定義,更改缺省值,增加新列,刪除列等等。ORACLE使用ALTER TABLE語句來更改表的定義
  1、增加列
  語法:
ALTER TABLE [schema.] table_name ADD column_definition 
  例:
ALTER TABLE orders ADD order_date DATE;
TABLE ALTER 
  對于已經存在的數據行,新列的值將是NULL.
  2、更改列
  語法:
ALTER TABLE [schema.] table_name MODIFY column_name new_attributes; 
  例:
ALTER TABLE orders MODITY (quantity number(10,3),status varchar2(15)); 
  這個例子中我們修改了表orders,將STATUS列的長度增加到15,將QUANTITY列減小到10,3;
  修改列的規則如下:
   . 可以增加字符串數據類型的列的長度,數字數據類型列的精度。
   . 減少列的長度時,該列應該不包含任何值,所有數據行都為NULL.
   . 改變數據類型時,該列的值必須是NULL.
   . 對于十進制數字,可以增加或減少但不能降低他的精度。
[page_break] 3、刪除數據列
  優化ORACLE數據庫,唯一的方法是刪除列,重新建立數據庫。在ORACLE8i中有很多方法刪除列,你可以刪除未用數據列或者可以標示該列為未用數據列然后刪除。
  刪除數據列的語法是:
ALTER TABLE [schema.] table_name DROP {COLUM column_names | (column_names)}[CASCADE CONSTRAINS] 
  要注意的是在刪除列時關于該列的索引和完整性約束也同時刪除。注意關鍵字CASCADE CONSTRAINS,如果刪除的列是多列約束的一部分,那么這個約束條件相對于其他列也同時刪除。
  如果用戶擔心在大型數據庫中刪除列要花太多時間,可以先將他們標記為未用數據列,標記未用數據列的語法如下:
ALTER TABLE [schema.] table_name SET UNUSED {COLUM column_names | (column_names)}[CASCADE CONSTRAINS] 
  這個語句將一個或多個數據列標記為未用數據列,但并不刪除數據列中的數據,也不釋放占用的磁盤空間。但是,未用數據列在視圖和數據字典中并不顯示,并且該數據列的名稱將被刪除,新的數據列可以使用這個名稱。基于該數據列的索引、約束,統計等都將被刪除。
  刪除未用數據列的語句是:
ALTER TABLE [schema.] table_name DROP {UNUSED COLUM | COLUMN CONTINUE} 
刪除表和更改表名
  刪除表非常簡單,但它是一個不可逆轉的行為。
  語法:
DROP TABLE [schema.] table_name [CASCADE CONSTRAINTS] 
  
  刪除表后,表上的索引、觸發器、權限、完整性約束也同時刪除。ORACLE不能刪除視圖,或其他程序單元,但oracle將標示他們無效。如果刪除的表涉及引用主鍵或唯一關鍵字的完整性約束時,那么DROP TABLE語句就必須包含CASCADE CONSTRAINTS子串。
  更改表名
  RENAME命令用于給表和其他數據庫對象改名。ORACLE系統自動將基于舊表的完整性約束、索引、權限轉移到新表中。ORACLE同時使所有基于舊表的數據庫對象,比如視圖、程序、函數等,為不合法。
  語法:
RENAME old_name TO new_name; 
  例:
SQL> RENAME orders TO purchase_orders;
TABLE RENAMED
 
  截短表
  TRUNCATE命令與DROP命令相似, 但他不是刪除整個數據表,所以索引、完整性約束、觸發器、權限等都不會被刪除。缺省情況下將釋放部分表和視圖空間,如果用戶不希望釋放表空間,TRUNCATE語句中要包含REUSE STORAGE子串。TRUNCATE命令語法如下:
TRUNCATE {TABLE|CLUSTER} [schema.] name {DROP|REUSE STORAGE} 
  例:
SQL> TRUNCATE TABLE t1;
TABLE truncate. 
  管理視圖
  視圖是一個或多個表中的數據的簡化描述,用戶可以將視圖看成一個存儲查詢(stored query)或一個虛擬表(virtual table).查詢僅僅存儲在oracle數據字典中,實際的數據沒有存放在任何其它地方,所以建立視圖不用消耗其他的空間。視圖也可以隱藏復雜查詢,比如多表查詢,但用戶只能看見視圖。視圖可以有與他所基于表的列名不同的列名。用戶可以建立限制其他用戶訪問的視圖。
  建立視圖
  CREATE VIEW命令創建視圖,定義視圖的查詢可以建立在一個或多個表,或其他視圖上。查詢不能有FOR UPDATE子串,在早期的ORACLE8i版本中不支持ORDER BY子串,現在的版本中CREATE VIEW可以擁有ORDER BY子串。
  例:
SQL> CREATE VIEW TOP_EMP AS 
SELECT empno EMPLOYEE_ID,ename EMPLOYEE_NAME,salary 
FROM emp
WHERE salary >2000 
  用戶可以在創建視圖的同時更改列名,方法是在視圖名后立即加上要命名的列名。重新定義視圖需要包含OR REPLACE子串。
SQL> CREATE VIEW TOP_EMP
(EMPLOYEE_ID,EMPLOYEE_NAME,SALARY) AS 
SELECT empno ,ename ,salary 
FROM emp
WHERE salary >2000 
  如果在創建的視圖包含錯誤在正常情況下,視圖將不會被創建。但如果你需要創建一個帶錯誤的視圖必須在CREATE VIEW語句中帶上FORCE選項。如:
CREATE FORCE VIEW ORDER_STATUS AS 
SELECT * FROM PURCHASE_ORDERS
WHERE STATUS=’APPPOVE’;
SQL>/
warning :View create with compilation errors 
  這樣將創建了一個名為ORDER_STATUS的視圖,但這樣的視圖的狀態是不合法的,如果以后狀態發生變化則可以重新編譯,其狀態也變成合法的。
  從視圖中獲得數據
  從視圖中獲得數據與從表中獲得數據基本一樣,用戶可以在連接和子查詢中使用視圖,也可以使用SQL函數,以及所有SELECT語句的字串。
  插入、更新、刪除數據
  用戶在一定的限制條件下可以通過視圖更新、插入、刪除數據。如果視圖連接多個表,那么在一個時間里只能更新一個表。所有的能被更新的列可以在數據字典USER_UPDATETABLE_COLUMNS中查到。
  用戶在CREATE VIEW中可以使用了WITH子串。WITH READ ONLY子串表示創建的視圖是一個只讀視圖,不能進行更新、插入、刪除操作。WITH CHECK OPTION表示可以進行插入和更新操作,但應該滿足WHERE子串的條件。這個條件就是創建視圖WHERE子句的條件,比如在上面的例子中用戶創建了一個視圖TOP_EMP,在這個視圖中用戶不能插入salary小于2000的數據行。
  刪除視圖
  刪除視圖使用DROP VIEW命令。同時將視圖定義從數據字典中刪除,基于視圖的權限也同時被刪除,其他涉及到該視圖的函數、視圖、程序等都將被視為非法。

全新的路由器不僅讓你更穩定快速地連接無線網絡,更可以讓家中的智能設備連接在一起。

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

在线看毛片视频-国产免费av在线-欧美日韩一区二区三区-国产成人无码av在线播放无广告-亚洲人va欧美va人人爽-国产第一草草-西班牙黄色片-四虎在线网站8848-最新av片免费网站入口-东京热无码中文字幕av专区-日本大人吃奶视频xxxx-欧美精品一区二区三区四区五区-国产片天天弄-国产免费内射又粗又爽密桃视频-欧美爱爱网站-日韩v欧美
  • <li id="86scu"><menu id="86scu"></menu></li>
    <li id="86scu"></li>
    <button id="86scu"></button>
  • <s id="86scu"></s><button id="86scu"><menu id="86scu"></menu></button>
  • a天堂资源在线观看| 97在线免费视频观看| 国产午夜福利在线播放| 欧美a级免费视频| 国产制服91一区二区三区制服| caoporm在线视频| 欧美精品 - 色网| 国产一二三四区在线观看| 欧美激情国内自拍| 992tv快乐视频| 日韩视频 中文字幕| 男人添女荫道口图片| 九一国产精品视频| av片中文字幕| 午夜剧场高清版免费观看| 在线观看18视频网站| 日韩精品久久一区二区| 三上悠亚久久精品| 日本久久久久久久久久久久| aaa一级黄色片| 野外做受又硬又粗又大视频√| 人妻熟妇乱又伦精品视频| 丁香婷婷激情网| av动漫免费观看| 精品久久久久久久久久中文字幕| 粗暴91大变态调教| 伊人成人免费视频| 黄色www网站| 思思久久精品视频| www.av91| 日韩精品视频网址| 亚洲精品乱码久久久久久自慰| 日韩欧美理论片| 免费一级特黄特色毛片久久看| 天堂中文视频在线| 欧美图片激情小说| 在线免费观看视频黄| 亚洲熟妇无码一区二区三区| 国产5g成人5g天天爽| 欧美性大战久久久久xxx| 五月天在线免费视频| 日本成人黄色网| a级黄色小视频| 蜜臀av.com| 亚洲精品综合在线观看| 人妻精品无码一区二区三区| 欧美黄色免费网址| 亚洲国产欧美91| 精品久久久久久中文字幕2017| 日韩网站在线免费观看| 亚洲第一精品区| 夜夜夜夜夜夜操| 中文字幕视频在线免费观看| 国产日产欧美视频| 日韩av综合在线观看| 无码日本精品xxxxxxxxx| 国产精品探花在线播放| 永久免费的av网站| 国产一级片自拍| 日日噜噜夜夜狠狠| 一区二区三区视频网| jizz大全欧美jizzcom| 一级在线免费视频| www欧美激情| 青青草久久伊人| 午夜免费一级片| japanese在线视频| 特级西西444| 国产av熟女一区二区三区| 精品人妻少妇一区二区| 黄色国产一级视频| av免费中文字幕| 亚洲欧美日韩三级| 好色先生视频污| 4444亚洲人成无码网在线观看| 2018中文字幕第一页| 日韩国产欧美亚洲| 少妇高清精品毛片在线视频| 国产天堂在线播放| 欧美激情第一区| 日韩xxxx视频| 三上悠亚av一区二区三区| 欧美一级视频在线| 欧美视频在线观看视频| 密臀av一区二区三区| av不卡在线免费观看| 俄罗斯av网站| 在线观看免费污视频| 男女啪啪免费观看| 色一情一乱一伦一区二区三区日本| 浓精h攵女乱爱av| 成人在线视频一区二区三区| 精品一卡二卡三卡| 亚洲av综合色区| 欧美 日韩 国产 激情| 大片在线观看网站免费收看| 少妇高潮喷水久久久久久久久久| jizz大全欧美jizzcom| 欧洲精品在线播放| 一起操在线视频| 国产精品丝袜久久久久久消防器材| 91av视频免费观看| 国产深夜男女无套内射| 思思久久精品视频| 欧美精品第三页| 91午夜在线观看| 国产美女18xxxx免费视频| 男人用嘴添女人下身免费视频| 岛国av免费在线| 18禁男女爽爽爽午夜网站免费| 99九九精品视频| 成年人视频在线免费| 精品国产一区二区三区无码| 三年中文在线观看免费大全中国| 免费黄色日本网站| 污污污污污污www网站免费| 中文字幕日韩综合| 性猛交ⅹ×××乱大交| 国内外成人激情视频| 97久久国产亚洲精品超碰热| 亚洲一区二区偷拍| 亚洲美女性囗交| 最新天堂中文在线| 亚洲综合欧美在线| 蜜臀av免费观看| 亚洲国产精品三区| 老司机午夜性大片| 在线观看免费不卡av| 在线观看免费黄网站| xx欧美撒尿嘘撒尿xx| 一道本在线免费视频| 中文字幕国内自拍| 五月婷婷六月丁香激情| 国产精品嫩草影院8vv8| 国产一级免费大片| 国产日产欧美一区二区| 日韩精品综合在线| 男人日女人下面视频| 黑森林福利视频导航| 丝袜制服一区二区三区| 五月天av在线播放| 性做爰过程免费播放| 男人c女人视频| 久久久久久久久久久久久国产精品 | 亚洲理论电影在线观看| 很污的网站在线观看| 国产无套内射久久久国产| 色综合av综合无码综合网站| 国产又大又黄又粗的视频| 无套内谢丰满少妇中文字幕| 国产成人一区二区三区别| 无码人妻h动漫| 久久精品久久99| h无码动漫在线观看| 久草在在线视频| 国产精品一区在线免费观看| 凹凸国产熟女精品视频| 一区二区久久精品| www.中文字幕在线| 日韩av.com| 国产午夜伦鲁鲁| 国产大片一区二区三区| 极品美女扒开粉嫩小泬| 久久精品国产99久久99久久久| 阿v天堂2018| 日韩一级免费片| 国产h视频在线播放| 日韩a一级欧美一级| 欧美极品欧美精品欧美图片| 51自拍视频在线观看| 国产精品-区区久久久狼 | 69精品丰满人妻无码视频a片| 亚洲色欲综合一区二区三区| 强开小嫩苞一区二区三区网站| 国语对白做受xxxxx在线中国| 免费观看中文字幕| 亚洲精品www.| 国产免费毛卡片| 18禁裸男晨勃露j毛免费观看| 人人干人人干人人| 成人在线观看黄| 人妻夜夜添夜夜无码av| 成人午夜免费剧场| xxxx在线免费观看| 爱情岛论坛亚洲首页入口章节| 日本国产在线播放| 免费无码毛片一区二三区| 国产又粗又长又爽视频| 欧美日韩亚洲国产成人| 精品亚洲一区二区三区四区| 91淫黄看大片| 国语对白做受xxxxx在线中国| 自拍日韩亚洲一区在线| 日本丰满少妇xxxx| 免费看日本毛片| 男人和女人啪啪网站| 九九爱精品视频| 91精品91久久久中77777老牛 | 国产黑丝在线视频| www.日本久久|