成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Oracle數據語言的4大類

數據庫 Oracle
以下的文章主要是對Oracle數據操作與控制語言的詳細介紹,以及我們在實際操作中經常使用的語言的分類,以下就是文章的具體內容的介紹。

SQL語言一共可以分為4大類,即,Oracle數據查詢語言DQL,Oracle數據操縱語言DML, 還有數據定義語言DDL,數據控制語言DCL。其中用于定義數據的結構,比如 創建、修改或者刪除數據庫;

DCL用于定義數據庫用戶的權限;在這篇文章中我將詳細講述這兩種語言在Oracle中的使用方法。

DML語言

DML是SQL的一個子集,主要用于修改Oracle數據,下表列出了ORACLE支持的DML語句。

 

語句 用途
INSERT 向表中添加行
UPDATE 更新存儲在表中的數據
DELETE 刪除行
SELECT FOR UPDATE 禁止其他用戶訪問DML語句正在處理的行。
LOCK TABLE 禁止其他用戶在表中使用DML語句

插入數據

INSERT語句常常用于向表中插入行,行中可以有特殊Oracle數據字段,或者可以用子查詢從已存在的數據中建立新行。

列目錄是可選的,缺省的列的目錄是所有的列名,包括comlumn_id,comlumn_id可以在數據字典視圖ALL_TAB_COLUMNS,USER_TAB_COLUMNS,或者DBA_TAB_COLUMNS中找到。

插入行的數據的數量和Oracle數據類型必須和列的數量和數據類型相匹配。不符合列定義的數據類型將對插入值實行隱式數據轉換。NULL字符串將一個NULL值插入適當的列中。關鍵字NULL常常用于表示將某列定義為NULL值。

下面的兩個例子是等價的。

 

 

  1. INSERT INTO customers(cust_id,state,post_code)  
  2. VALUE('Ariel',NULL,'94501');  

 

  1. INSERT INTO customers(cust_id,state,post_code)  
  2. VALUE('Ariel',,'94501');  

更新數據

UPDATE命令用于修改表中的Oracle數據。

 

  1. UPDATE order_rollup  
  2. SET(qty,price)=(SELECT SUM(qty),SUM(price) FROM order_lines WHERE customer_id='KOHL' 
  3. WHERE cust_id='KOHL' 
  4. AND order_period=TO_DATE('01-Oct-2000')  

刪除數據

DELETE語句用來從表中刪除一行或多行數據,該命令包含兩個語句:

1、關鍵字DELETE FROM后跟準備從中刪除數據的表名。

2、WHERE后跟刪除條件

 

  1. DELETE FROM po_lines  
  2. WHERE ship_to_state IN ('TX','NY','IL')  
  3. AND order_date< td>  

清空表

如果你想刪除表中所有Oracle數據,清空表,可以考慮使用DDL語言的TRUNCATE語句。TRUNCATE就像沒有WHERE子句的DELETE命令一樣。TRUNCATE將刪除表中所有行。TRUNCATE不是DML語句是DDL語句,他和DELETE右不同的特點。

 

  1. TRUNCATE TABLE (schema)table DROP(REUSE) STORAGE  

STORAGE子串是可選的,缺省是DROP STORAGE。當使用DROP STORAGE時將縮短表和表索引,將表收縮到最小范圍,并重新設置NEXT參數。REUSE STORAGE不會縮短表或者調整NEXT參數。

TRUNCATE和DELETE有以下幾點區別

1、TRUNCATE在各種表上無論是大的還是小的都非???。如果有ROLLBACK命令DELETE將被撤銷,而TRUNCATE則不會被撤銷。

2、TRUNCATE是一個DDL語言,向其他所有的DDL語言一樣,他將被隱式提交,不能對TRUNCATE使用ROLLBACK命令。

3、TRUNCATE將重新設置高水平線和所有的索引。在對整個表和索引進行完全瀏覽時,經過TRUNCATE操作后的表比DELETE操作后的表要快得多。

4、TRUNCATE不能觸發任何DELETE觸發器。

5、不能授予任何人清空他人的表的權限。

6、當表被清空后表和表的索引講重新設置成初始大小,而delete則不能。

7、不能清空父表。

 

  1. SELECT FOR UPDATE 

select for update語句用于鎖定行,阻止其他用戶在該行上修改Oracle數據。當該行被鎖定后其他用戶可以用SELECT語句查詢該行的數據,但不能修改或鎖定該行。

鎖定表

LOCK語句常常用于鎖定整個表。當表被鎖定后,大多數DML語言不能在該表上使用。LOCK語法如下:

 

  1. LOCK schema table IN lock_mode  

其中lock_mode有兩個選項:

share 共享方式

exclusive 唯一方式

例:

 

  1. LOCK TABLE intentory IN EXCLUSIVE MODE  

 上述的相關內容就是對Oracle數據操作和控制語言詳解的描述,希望會給你帶來一些幫助在此方面。

文章出自:  http://www.programbbs.com/doc/class10-3.htm

【編輯推薦】

  1. Oracle 語句的優化規則中的相關項目
  2. Oracle實例如何創建?
  3. Oracle sql 性能如何進行調整
  4. Oracle sql 性能的優化調整的2大步驟
  5. 對Oracle SQL相同語句的解析
責任編輯:佚名 來源: programbbs
相關推薦

2010-11-15 15:20:13

Oracle索引掃描

2009-11-11 09:40:53

Oracle索引掃描

2010-04-19 17:08:01

Oracle參數

2010-04-13 12:56:16

Oracle字符集

2016-11-08 16:42:03

算法AI大數據

2021-08-11 14:48:32

數據分析大數據算法

2022-02-22 11:20:56

滲透測試網絡安全

2010-05-31 12:10:37

2019-01-31 09:33:50

CNN神經網絡激活函數

2017-10-21 23:44:18

2019-09-28 22:41:18

OracleMySQL隱式數據

2010-03-22 14:54:35

2009-07-02 11:29:30

MySQL參數

2017-11-30 10:24:17

AWSIoT機器學習

2011-05-25 15:49:32

HP墨盒講解

2009-10-22 15:35:24

VB.NET循環

2009-11-10 11:01:05

VB.NET事件

2020-05-16 12:20:40

Excel數據清洗函數

2010-05-12 14:05:54

MySQL安裝

2020-03-02 11:50:05

人工智能機器學習技術
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 午夜影晥 | 久久大香 | 亚洲免费网站 | 天天躁日日躁狠狠的躁天龙影院 | 亚洲一区二区三区视频免费观看 | 古装三级在线播放 | 欧美在线视频一区二区 | av在线免费观看网站 | 国产综合久久 | av国产精品 | 人人人干 | 午夜欧美一区二区三区在线播放 | 日韩欧美国产精品 | 国产999精品久久久久久 | 欧美日韩精品一区二区三区蜜桃 | 成人免费视频网址 | 久久国产精品一区 | 国产一区二区日韩 | 日日天天| 国产精品看片 | 亚洲精品一区中文字幕乱码 | 日韩精品一区二区三区中文在线 | 国产日韩欧美 | 久久久久久久久蜜桃 | 精品久久99 | 国产韩国精品一区二区三区 | 五月婷婷 六月丁香 | 一区二区福利视频 | 99re视频在线观看 | 国产精品久久av | 中文字幕亚洲一区二区三区 | 好姑娘高清在线观看电影 | 伊人热久久 | 中文字幕在线三区 | 亚洲欧美aⅴ | 亚洲日韩中文字幕一区 | 可以免费看的毛片 | 极品一区 | 国产精品亚洲片在线播放 | 日韩欧美视频在线 | 伊人伊成久久人综合网站 |