日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Oracle 常识

發布時間:2023/12/20 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Oracle 常识 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.Oracle數據類型
1.字符數據類型
? .>?? char:可以存儲字母數字值,長度在1到2000個字節。
? .>?? varchar2:存儲可變長度的char類型字符串,大小在1到4000個字節范圍內。
?? .>?? long:存儲可變長度的字符數據,最多存儲2GB。
?long類型的使用限制:???????
?**************************************
?*{
?*..? 一個表中只有一列可以為long數據類型。
?*..? long列不能定義為唯一約束或主鍵約束。
?*..? long列上不能建立索引。
?*..? 過程或存儲過程不能接受long數據類型的參數。
?*}
?***************************************
2.數字數據類型
.>?? number:存儲正數,負數,零,定點書和精度為38位的浮點數。
???? number類型的格式:
? number[(p[,s])]
???????? 其中p為精度,表示數字的總位數; s為范圍,表示小數點右邊的位數,它在-84至127之間。
3.日期時間數據類型
.>?? date:存儲表的日期和時間數據,使用7個字節固定長度,
??? 每個字節分別存儲世紀,年,月,日,小時,分和秒;值從公元前4712年1月1日到公元9999年12月31日。
??? {
?????? Oracle中的sysdate函數功能是返回當前的日期和時間。
??? }
.>?? timestamp:存儲日期的年,月,日以及時間的小時,分和秒值。其中秒值精確到小數點后6位,同時包含時區信息。
??? {
?????? Oracle中的systimestamp函數功能是返回當前日期,時間和時區。
??? }
4.raw和long raw數據類型(二進制數據)
.>? raw: 存儲基于字節的數據。最多存儲2000個字節,使用需指定大小。raw數據類型可以建立索引。
.>? long raw: 存儲可變長度的二進制數據。最多能存儲2GB;不能索引。與long類型的限制同效。
5.lob數據類型('大對象')
??? ***********************************
??? * lob類型可以存儲多達4GB的非結構化信息。
??? * Oracle中的表可以有多個lob列,每個lob列可以是不同的lob類型。
??? ***********************************
.>? clob: 存儲大量的單字節字符數據和多字節字符數據。例:非結構化的XML文檔。
.>? blob: 存儲較大的二進制對象。例:圖形,視頻,音頻等。
.>? bfile: 文件定位器;指向位于服務器文件系統是的二進制文件(存儲一個文件路徑)。
???? -----------------------------------------------------------------------------------------------------------------------
6.Oracle中偽列
.> rowid: 返回行地址,可用來定位表中的一行。可以唯一地標識數據庫中的一行。
?重要的用途
?****************************
?*..? 能一最快的方式訪問表中的一行
?*..? 能顯示表的行是如何存儲的
?*..? 可以作為表中行的唯一標識
?****************************
.> rownum: 對于一個查詢返回的每一行進行標識;可用于限制查詢返回的行數。(不是數據表的實際列)

二.Oracle中的sql操作符
.>算數操作符:
?包括: +(加),-(減),*(乘),/(除)
? *和/具有相同的優先級,+和-j具有相同的優先級,*和/的優先級高于+和-。可用小括號來控制計算順序。
.>比較操作符:
?包括:=(相等),!=(不相等),<(小于),>(大于),<=(小于等于),>=(大于等于)
?????? between....and...(檢查是否在兩個值之間)
?????? in(與列表中的值相匹配)
?????? link(匹配字符模式<模糊匹配>)
?????? is null(檢查是否為空)
.>邏輯操作符:
?包括:
????? and(與),or(或),not(非)
.>集合操作符:
?包括:
????? union(聯合):返回兩個查詢選定的所有不重復的行。
????? union all(聯合所有):合并兩個查詢選定的所有行,包括重復的行。
????? intersect(交集):返回兩個查詢共有的行。
???????????? minux(減集):返回有第一個查詢選定但是沒有被第二個查詢選定的行。
.>連接操作符:
????? || : 將兩個或多個字符串合并成一個字符串,或者將一個字符串與一個數值合并在一起。


操作符的優先級
************************************************
*算數操作符? 高
*連接操作符? |
*比較操作符? |
*not邏輯操作符? |????????
*and邏輯操作符? |
*or邏輯操作符?????????? 低??????????????????????????????
************************************************

三.SQL函數
.>日期函數
?add_months(d,n)<d是日期,n是月數>:返回指定日期加上指定月數后的日期值。
?months_between(d1,d2)<d1,d2都是兩個日期>:返回兩個日期之間的月數。
?last_day(d)<d是日期>:返回指定日期當月的最后一天的日期值。
?round(d,[fmt])<d是日期,fmt指定格式模型>:返回日期值,此日期四舍五入為格式模型指定的單位。
?? (fmt是一個選項,默認舍入為最靠近的那一天。
?? 如果格式為‘year’則舍入到年的開始,即1月1日;
?? 如果格式為‘month’則舍入到月的第一天;
?? 如果格式為‘day’則舍入到最靠近的星期天。
?? )???
?next_day(d,day)<d是日期,day指定周內任何一天 如‘星期一’>:返回指定的下一個星期幾的日期。
?trunc(d,[fmt])<d是日期,fmt指定格式模型>:返回日期值,指定日期截斷為格式模型指定的單位的日期。
?? (與round函數類似,不同的是它只舍不入。)
?extract(fmt from d)<fmt指定格式模型,d是日期>:提取日期時間類型中的特定部分。?
?? (fmt取值可以是:year,month,day,hour,minute,second;注意此處的格式不能使用單引號。)
.>字符函數??
?函數???? 說明? 輸入???????? 輸出結果
?initcp(char)?????? 首字母大寫 select initcap('hell0') from dual???? Hello
?lower(char)??? 轉換為小寫 select lower('FUN') from dual????? fun
?upper(char)??? 轉換為大寫 select upper('sun') from dual????? SUN
?ltrim(char,set)??? 左剪裁? select ltrim('xyzadams','xyz') from dual??? adams
?rtrim(char,set)??? 右剪裁? select rtrim('xyzadams','ams')from dual??????????? xyzad
?translate(char,from,to)?? 按字符翻譯 select translate('jack','abcd','1234') from dual?? j12k
?peplace(char,search_str,replace_str) 字符串替換 select replace('jack and jue','j','bl') from dual? jack and blue
?instr(char,substr[,pos])? 查找子串位置??? select instr('worldwide','d') from dual???? 5
?substr(char,pos,len)?? 取子字符串????? select substr('abcdefg',3,2) from dual???? cd
?concat(char1,char2)?? 連接字符串????? select concat('Hello','world') from dual???? Helloworld
?=================================
?..? chr(int)<int是ASCII碼>:根據ASCII碼返回對應的字符。
?..? lpad(str,int,char)和rpad(str,int,char)<str是源字符串,int指定總長度,char是填充的字符>:用指定的字符(左|右)填充源字符串到指定長度。
?..? trim([[leading|trailing] trim_char] from trim_sourse)<trim_char指定裁剪的字符,trim_sourse是源字符串>
? (
?? 此函數組合了ltrim和rtrim的功能。
?? leading選項時與ltrim相似,裁減與trim_char相等的開頭字符。
?? trailing選項時與rtrim相似,裁減與trim_char相等的結尾字符。
? )
?..? length(str)<str是字符串>:返回字符串的長度。
?..? decode(expr,search1,trsult1,search2,trult2...[,default])<expr是字符變量或數據表字段,search是expr的預期值,trsult是返回值,default是無匹配是返回的值>
? (
?? decode函數進行逐個值的替換。
? )
.>數字函數
?函數? 說明? 輸入???? 輸出結果
?abs(n)? 取絕對值 select abs(-15) from dual? 15
?ceil(n)? 向上取整 select ceil(44.778) from dual? 45
?sin(n)? 正弦? select sin(1.571) from dual? 0.999999979
?cos(n)? 余弦? select cos(0) from dual?? 1
?sign(n)? 取符號? select sign(-32) from dual? -1
?floor(n) 向下取整 select fllor(100.2) from dual? 100
?power(n) m的n次冪 select power(4,2) from dual? 16
?mod(m,n) 取余數? select mod(10,3) from dual? 1
?round(m,n) 四舍五入 select round(100.256,2) from dual 100.26
?trunc(m,n) 截斷? select trunc(100.256,2) from dual 100.25
?sqrt(n)? 平放根? select sqrt(4) from dual? 2
.>轉換函數
?to_char(d|n[,fmt])<d是日期,n是數字,fmt是指定日期或數字的格式>:將指定的日期或數字轉換成字符串(varchar2)。
?to_date(char[,fmt])<char是日期格式的字符串,fmt是日期的格式>:將char或varchar數據類型轉換為日期類型。
?to_number(char)<char是包含數字的字符串>:將包含數字的字符串轉換為數字。
.>其他函數
?nvl(expression1,expression2)<exprission1是變量或數據表字段,exprission2是一個值>:將空值替換為指定的值。
? (
?? 如果expression1為NULL,則nvl返回expression2
?? 如果expression1不為NULL,則nvl返回expression1
?? <sexpression2的類型將轉換為expression1的類型>
? )
?nvl2(expression1,expression2,expression3)<exprission1是變量或數據表字段,exprission2和exprission3是一個值>:與nvl類似
? (
?? 如果expression1不為NULL,則nvl返回expression2
?? 如果expression1為NULL,則nvl返回expression3
? )
?nullif(expr1,expr2)<expr1,expr1分別為表達式>:比較兩個表達式,如果相等,則返回空值(null),否則返回expr1。
.>分組函數
?avg(column)<column是列名>:返回參數中指定列的平均值。
?min(column)<column是列名>: 返回參數中指定列的最小值。
?max(column)<column是列名>: 返回參數中指定列的最大值。
?sum(column)<column是列名>: 返回記錄集中值的總和。
?count([distinct]*|column[,column..])<distinct選項指定去除重復項,column是列名>: 返回記錄集中的行數。
?<group by子句用于將信息表化分為組,having字句用來指定group by的檢索條件>
.>分析函數
?row_number() over ([partition by column] order by clause[,多列] [desc|esc])<column指定分組列名,clause指定排列列名>:為有序組中的每一行(化分部分的行或查詢返回的行)返回一個唯一的排序
?值,序號由order by字句指定,從1開始。(值相同,而排位不相同)

?rank () over ([partition by column] order by clause[,多列] [desc|esc])<column指定分組列名,clause指定排列列名>:計算一個值在一組值中的排位,排位是以1開頭的連續整數,具有相等值的行排
?位相同,序數隨后跳躍相應的數值。(值相同,排位相同,排位有可能不連續)

?dense_rank() over ([partition by column] order by clause[,多列] [desc|esc])<column指定分組列名,clause指定排列列名>:計算一個行在一組有序行中的排位,排位是以1開頭的連續整數,具有相同
?值的排位相同,并且排位是連續的。(值相同,排位相同,排位連續)

四.Oracle鎖
?鎖定是數據庫用來控制共享資源并發訪問的機制。
.>行級鎖(用于特定行)
?行級鎖是一中排他鎖,防止其他事務修改此行,當是不會阻止讀取此行的操作。
?在使用insert,update,delete和select ...for update等語句時,Oralce會自動應用行級鎖定。
?select...for update語句允許用戶每次選擇多行記錄進行更新,這些記錄會被鎖定,且只能有發起查詢的用戶進行編輯。只有在回滾或提交事務后,鎖定才會釋放,其他用戶才可以編輯這些記錄。
?{
? select ...for update [of column_list] [wait n | nowait ]<column_list是列的列表,n是等待的秒數,nowait指定不等待>
? > of 子句用于指定即將更新的列,即鎖定行上的特定列。
? > wait 子句指定等待其他用戶釋放鎖的秒數,防止無限制的等待。
?}
.>表級鎖(用于整個表)
?表級鎖定將保護表數據,在事務處理過程中,表級鎖會限制對整個表的訪問。可以使用lock table語句顯示地鎖定表。表級鎖用來限制對表執行添加,更新和刪除等修改操作。
??????? {
? lock table <table_name> in <lock_mode> mode [nowait];<table_name是鎖定表的名稱,lock_mode是鎖定的模式,nowait指定不等待>
? >lock_mode是鎖定的模式。
? >nowait 關鍵字用于防止無限期的等待其他用戶釋放鎖。
? (
? 表級鎖的模式包括:
?? >行共享(row share,rs): 允許其他用戶訪問和鎖定該表,但是禁止排他鎖定整個表。
?? >行排他(row exclusive,rx):與行共享相同,同時禁止其他用戶在此表上用共享鎖。
?? >共享(share, s):僅允許其他用戶查詢表中的行,但不允許插入,更新和刪除。
?? >共享行排他(share row exclusive,srx):執行比共享鎖更多的限制。防止其他事物在表上應用共享鎖,共享排他鎖以及排他鎖。
?? >排他(exclusive,x):對表執行最大限制。除了允許其他用戶查詢該表的記錄,排他鎖防止其他事務對表做任何更改或在表上應用任何類型的鎖。
? )
? * 執行commit或rollback命令可以釋放鎖定。
?}
五.Oracle表分區
?????? 表分區的優點:
? ..? 改善表的查詢性能。
? ..? 表更容易管理。
? ..? 便于備份和恢復。
? ..? 提高數據安全性。
.>范圍分區
?范圍分區根據表的某一列或一組列的值范圍,決定數據存儲在那個區上。
?在create table語句中增加parition子句可以創建表分區。
?語法:
?partition by rang (column_name)
?(
? partition part1 value less than(range1) [tablespace tbs1],
? partition part2 value less than(range2) [tablespace tbs2],
? ......
? partition partn value less than(MAXVALUE) [tablespace tbsN]
?);
?其中:
? column_name:是以其為基礎創建范圍分區的列,特定列的該列值稱為分區鍵。
? part1..partn:是分區的名稱。
? range1...MAXVALUE:是分區的邊界值。
? tbs1...tbsn:是分區所在的表空間(可選項)。
.>散列分區
?散列分區通過分區鍵值上執行一個散列函數來決定數據的物理位置。(散列分區把記錄平均分布到不同的分區,減少了磁盤I/O爭用的可能性)
?語法:
?partition by hash (column_name)
?partitions number_of_partitions [store in (tablespace_list)];
?或
?partition by hash (column_name)
?(
? partition part1 [tablespace tbs1],
? partition part2 [tablespace tbs2],
? .....
? partition partn [tablespace tbsn]
?)
?其中:
?column_name:是以其為基礎創建散列分區的列。
?number_of_partitions:是散列分區的數目,使用這種方法系統會自動生成分區的名稱。
?tablespace_list:指定分區使用的表空間,如果分區數目比表空間的數目多,分區將會以循環的方式分配到表空間中。
.>復合分區
?復合分區是范圍分區和散列分區的結合。
?語法:
?partition by rang (column_name1)
?subpartition by hash (column_name2)
?subpartitioins number_of_partitions [store in (tablespace_list)]
?(
? partition part1 value less than(range1) [tablespace tbs1],
? partition part2 value less than(range2) [tablespace tbs2],
? ......
? partition partn value less than(MAXVALUE) [tablespace tbsN]
?)
?其中:
?column_name1:是以其為基礎創建范圍分區的列。
?column_name2:是以其為基礎創建散列分區的列。
?number_of_partitions:是散列分區的數目。
?part1..partn:是分區的名稱。
?range1...MAXVALUE:是分區的邊界值。
.>列表分區
?列表分區允許用戶明確地控制行到分區的映射。
?語法:
?partition by list (column_name)
?(
??? partition part1 values (values_list1),
?? partition part2 values (values_list2),
? ....
? partition partn values (DEFAULT)
?)
?其中:
?column_name:是以其為基礎創建列表分區的列。
?part1..partn:是分區的名稱。
?values_list:是對應分區鍵值的列表。
?DEFATLT:關鍵字允許存儲前面的分區不能存儲的記錄。
***************************************************************
*在分區表中插入記錄:與在普通表中插入數據完全相同。
*在分區表中查詢記錄:select * from 表名 partition (分區名)
*刪除分區中的記錄: delete from 表名 partitioin (分區名)
***************************************************************

<*>分區維護操作
.>添加分區
?alter table ... ADD partition語句用于在現所有的最后一個分區(稱為'高'端)之后添加新的分區。
?例:
?alter table sales add partitions p4 values less than (4000);
.>刪除分區
?alter table ... drop partition 語句用于刪除分區。(刪除分區時,分區中的數據也隨之刪除)
?例:
?alter table sales drop partition p4;
.>截斷分區
?alter table ... truncate partition 語句用于截斷分區,截斷分區將刪除分區中的所有記錄。
?例:
?alter table sales truncate partition p3;
.>合并分區
?合并分區可將范圍分區表或復合分區表的兩個相鄰分連接起來。結果分區將繼承被合并的兩個分區的較高上界。
?語法:
?alter table table_name
?merge partitions partitions1_name,partitions2_name
?into partition3_name;
?其中:
?table_name:是表名。
?partitions1_name,partitions2_name:是已有分區。
?partitions3_name:合并到分區的名稱。
.>拆分分區
?使用split partition語句在表的開頭或中間添加分區。拆分分區允許用戶將一個分區拆分為兩個分區。當分區過大,可以對分區進行拆分。
?語法:
?alter table table_name split partition partiton_name at (value)
?into (partition partiton1,partition partiton2);
?其中:
?table_name:是表名。
?partiton_name:已有分區名。
?value:拆分分隔值。
?partition partiton1,partition partiton2:表示拆分后的新分區。
六.同義詞
?同義詞是數據庫對像的一個別名,這些對象可以是表,視圖,序列,過程,函數,程序包,甚至其他同義詞。
?同義詞用途:
?{
? .. 簡化sql語句
? .. 隱藏對象的名稱和所有者
? .. 為分布式數據庫的遠程對象提供了位置透明性
? .. 提供對象的公共訪問
?}
?同義詞允許應用程序訪問數據庫對象,不論哪個用戶或哪個數據庫擁有該對象。但是同義詞不能代替權限,在使用同義詞前要確保用戶已得到訪問對象的權限。
?可以通過同義詞執行select,insert,update,delete,lock table,grant和revoke等語句。同義詞只是表的一個別名,因此對它的所有操作都會影響到表。
.>私有同義詞
?私有同義詞只能被當前模式的用戶訪問。
?私有同義詞名稱不可與當前模式的對象名稱相同。
?要在自身的模式創建私有同義詞,用戶必須擁有create sysnonym系統權限。
?要在其他用戶模式創建同義詞,用戶必須擁有create any synonym系統權限。
?語法:
?create [or replace] synony [schema.]synonym_name for [schema.]object_name
?其中:
?or relaoce:表示在同義詞存在的情況下替換該同義詞。
?synonym_name:表是要創建的同義詞的名稱。
?object_name:指定要為之創建同義詞的對象的名稱。
.>公有同義詞
?公有同義詞可被所有的數據庫用戶訪問。
?創建公有同義詞,用戶必須擁有greate public synonym系統權限。
?create [or replace] public synonym synonym_name for [schema.]object_name
?其中:
?or relaoce:表示在同義詞存在的情況下替換該同義詞。
?synonym_name:表是要創建的同義詞的名稱。
?object_name:指定要為之創建同義詞的對象的名稱。
<*>刪除同義詞
?drop synonym語句用于從數據庫中刪除同義詞。要刪除同義詞用戶必須有相應的權限。
?語法:
?drop [public] synonym [schema.]synonym_name;
七.序列
?序列是用來生成唯一,連續的整數的數據庫對象。
?序列通常用來自動生成主鍵或唯一的值。
?序列可以按升序排列,也可以按降序排列。
?語法:
?create sequence sequence_name
?[stare with integer]
?[increment by integer]
?[maxvalue integer|nomaxvalue]
?[minvalue integer|nominvalue]
?[cycle|nocycle]
?[cache integer|nocache];
?其中:
?sequence_name:是創建的序列名稱。
?stare with:指定要生成的第一個序列號。
?increment by:用于指定序列好之間的間隔。
?maxvalue:指定序列可以生成的最大值。
?nomaxvalue:如果指定了nomaxvalue,oracle將升序序列的最大值設為10的27次方;將降序序列的最大值設為-1。
?minvalue:指定序列可以生成的最小值。
?nominvalue:無最小值,oracle將升序序列的最小值設為1;將降序序列的最小值設為10的-26次方。
?cycle:指定序列在達到最大值或最小值后,將繼續從頭開始生成值。
?nocycle:指定序列在達到最大值或最小值后,將不能在繼續生成值。這是默認選項。
?cache:使用cache選項可以預先分配一組序列號,并將其保存在內存中。這樣可以更快地訪問序列號,但用完緩存中的所有序列號,Oralce將生成另一組數值,并將其保留在緩存中。
?nocache:不緩存序列號。 如果創建序列時忽略了cache和nocache選項,Oracle將默認緩存20個序列號。
<*>訪問序列
??????? 語法;
?sequence_name . nextval|currval
?其中:
?sequence_name:是已創建的序列名稱。
?nextvla:創建序列后第一次使用nextval時,將返回該序列的初始值。以后在引用nextval時,將使用increment by子句的值來增加序列值,并返回這個新值。
?currval:返回序列的當前值。
<*>更改序列
?alter sequence 命令用于修改序列的定義。
?{
? .. 設置或刪除minvalue或maxvale。
? .. 修改增量值。
? .. 修改緩存中的序列號的數目。
?}
?語法:
?alter sequence [schema.]sequence_name
?[increnment by integer]
?[maxvalue integer|nomaxvalue]
?[minvalue integer|nomaxvalue]
?[cycle|nocycle]
?[cache ingeter|nocache];
??? 注意:不能修改序列的start with參數。
<*>刪除序列
?drop sequence命令用于刪除序列。
?語法:
?drop sequence 序列名
八.視圖
?視圖一經過定制的方式顯示包含愛一個或多個表(或其他視圖)中的數據。
?語法:
?create [or replace] [force|noforce] view view_name
?[(alias[,alias]...)]
?as select_statement
?[with check option [constraint constraint]]
?[with read only];
?其中:
?or relaoce:表示在視圖存在的情況下替換該視圖。
?force:無論基表是否存在,都將創建視圖。
?noforce:僅當基表存在才創建視圖。
?view_name:創建視圖的名稱。
?alias:指定有視圖的查詢所選擇的表達式或列的別名。別名的數目必須與視圖所選擇的表達式的數目相匹配。
?select_statement:表示select語句。
?with check option:指定只能插入或更新視圖可以訪問的行。術語constraint表示check option約束指定的名稱。
?with read only:確保不能在此視圖上執行任何修改操作。(只瀆)
<*>在視圖上使用DML語句的限制:
?> 在視圖中使用DML語句只能修改一個底層的基表。
?> 如果記錄的修改違反了基表的約束條件,則無法更新視圖。
?> 如果創建的視圖包含連接運算符,distinct運算符,集合運算符,聚合運算符和Group by子句,則無法更新視圖。
?> 如果創建的視圖包含偽劣或表達式,則將無法更新視圖。
<*>鍵保留表
?在聯結視圖中,如果視圖包含了一個表的主鍵,并且也是這個視圖的主鍵,則這個鍵被保留,這個表稱為鍵保留表。
<*> 刪除試圖
?語法:
? drop view 視圖名稱
九.索引
?索引只是一種快速訪問數據的途徑,它只影響執行的速度。
.>唯一索引
?索引可以是唯一的,也可以是非唯一的。唯一索引可以確保在定義索引的列中,表的任意兩個值都不相同。
?語法:
?create unique index 索引名 on 表名(唯一列名);
?其中:
?unique:指定為唯一索引。
.>組合索引
?組合索引是在表中的多列上創建的索引。
?語法:
?create index 索引名 on 表名(列名,列名);
.>反向鍵索引
?可以在create index語句中指定關鍵字Reverse創建反向鍵索引。
?語法:
?create index 索引名 on 表名(列名) reverse;
?其中:
?reveerse:指定為反向鍵索引。
?使用noreverse可以將反向鍵索引重建為標準索引。
? 例: alter index 索引名 rebuild noreverse;
?注意:? 不能將標準索引重建為反向鍵索引。
.>位圖索引
?使用位圖索引的優點在于,它最適用于低基數列,也就是不同值的數目比表的行數少的列(枚舉列)。
?語法:
?create bitmap index 索引名 on 表名 (列名);
?其中:
?bitmap:指定為位圖索引。
<*>位圖索引優點
?> 對于大批即席查詢,可以減少響應時間。
?> 相比其他索引技術,占用空間明顯減少。
?> 即使在配置很低的終端硬件上,也嫩個獲得顯著的性能。
.>索引組織表
?索引組織表與普通表的不同之處在于,該表的數據存儲在與關聯的索引中。對表數據進行的修改,如添加新行,更新和刪除行,只會導致對索引的更新。
?語法:
?create table 表名
?(
? 列名? 類型 primary key,
? ...
?)
?organization index;
?其中:
?organization index: 指定為索引組織表。
<*>注釋
?primary key是創建索引組織表所必需的。
.>索引中分區
?> 局部分區索引
?局部分區索引是在分區表上創建的一中索引,在局部分區中Oracle為表的每個分區建立一個獨立的索引。
?語法:
?create index 索引名 on 表名(列名) local;
?其中:
?local:指定為本地分區創建索引。
?> 全局分區索引
?全局分區索引是指在分區表或非分區表上創建的索引。
?語法:
?create index 索引名 on 表名(列名) global
?partition onrange (列名)
?(
? ...分區?
?)
?其中:
?global:指定為全局分區創建索引。
?>全局非分區索引
?全局非分區索引是在分區表上創建的全局索引,它類似于非分區表上的索引,索引的結構不會被分割。
十.pL/Sql編程
?優點:
?>支持sql。
?>支持面向對象編程(oop)。
?>更好的性能。
?>可移植性。
?>與sql集成。
?>安全性。
<*> PL/SQL塊
?>聲明塊:聲明塊中使用的變量,游標和自定義異常。這些聲明的作用域僅限于它們所在的塊。此外,局部子程序也可以在PL/SQL塊的聲明部分中聲明。
?>可執行部分:執行命令并操作在聲明部分聲明的變量和游標。
?>異常處理部分:處理執行塊時引發的異常。
?pl/sql塊聲明語法:
?[declare
? 所有聲明]
?begin
? 執行語句
?[exception
? 異常處理]
?end;
?>pl/sql對大小寫不敏感,但是用戶和用戶的開發團隊應該選擇一個合適的編碼標準,以確保最好的使用共享池。
?>pl/sql中一些復合符號的含義:
? :=???? 賦值操作符
? ||???? 連接操作符
? --???? 單行注釋
? /*,*/? 多行注釋
? <<,>>? 標簽分隔符
? ..???? 范圍操作符
? **???? 求冪操作符
<*>數據類型
?? 標量數據類型
?>數字數據類型
?數字數據類型存儲的數據為數字,用此數據類型存儲的數據可用于計算。
?數字類型包括:
?a: binary_integer
?{
?用于存儲帶符號的整數。值的大小范圍介于-2的31次方減1到2的31次方減1之間。
?binary_integer的子類型:
?? .. natural:可以限制變量存儲非負整數值,即自然數。
? .. naturaln:可以限制變量存儲自然數,且非空。
? .. positive:可以限制變量存儲正整數。
? .. positiven:可以限制變量存儲正整數,且非空。
? .. signtype:可以限制變量只存儲-1,0和1三個值。
?}
?b: number
?{
?用于存儲整數,定點數和浮點數。
?語法:
?number[(presision,scale)]
?其中:
? presision:是精度。
? scale:是小數位數。
?只能用整數文字指定精度和小數位數,而不能用常量或變量指定精度和小數位數。
?number數據類型的一些子類型包括:
? .. decimal:用于聲明最高精度為38位的十進制數字的定點數。
? .. float:聲明最高精度為126位的二進制數字的浮點數。
? .. ingeter:聲名最高精度為38為的十進制數字的整數。
? .. real: 聲明最高精度為63位的二進制數字的浮點數。
?}
?c: pls_integer
?{
?存儲帶符號的整數。pls_integer的大小范圍介于-2的31次方到2的31次方之間。與number和binary_integer類型相比,它執行運算的速度更快。
?pls_integer運算以機器算術運算為基礎,而number和binary_integer運算以庫算術為基礎。此外,與number數據類型相比,pls_integer需要的
?存儲空間更小。通常建議在執行處于pls_integer的數值范圍類的所有計算時使用此數據類型以提高效率。
?}
?>字符數據類型
?字符數據類型勇于存儲字符串或字符數據。
?a: char
?{
?存儲固定長度的字符數據。(不超過32767個字節的最大長度)
?語法:
?char[(maximum_size[char|btye])]
?其中:
?maximum_size:是最大長度。
?char|byte:指定長度為字符數或字節數。
?}
?b: raw
?{
?存儲二進制數據或字節串。(類似于char,不同之處是它們不在字符集中轉換)
?語法:
?raw(maximum_size)
?其中:
?miximum_size:是最大長度。(最大長度是32767個字節)
?}
?c:long和long Raw
?{
?pl/sql中 long類型是可變長度字符串。最大長度為32760個字節。類似Oralce中的varchar2。
?long row類型類似于raw數據類型,存儲二進制數據或字節串,最大長度是32760個字節。
?}
?d: varchar
?{
?此類型可容納可變長度字符串。
?語法:
?varchar2(maximum_size [char|byte])
?其中:
?maximum_size:是最大長度。
?char|byte:指定長度為字符數或字節數。
?varchar2類型的子類型包括:
? .. string
? .. varchar?
?子類型的數值范圍與基本類型相同。
?}
?>日期時間數據類型
?日期時間數據類型用于存儲日期和時間值。
?a:date
?{
?用于存儲固定長度的日期和時間數據。它支持的日期范圍為:從公元前(B.C.E)4712年1月1日到公元(C.E)9999年12月31日。
?date數據類型包括時間。
?日期函數sysdate返回當前日期和時間。
?初使化參數NLS_DATE_FORMAT用于設置默認日期格式。
?}
?b: timestamp
?{
?用于存儲日期和時間。是date數據類型的擴展,它存儲年,月,日,小時,分鐘和秒。
?日期函數SYSTIMESTAMP返回當前的日期時間信息。
?語法:
?timestamp [(precision)]
?其中:
?precision:是精度。它代表秒字段小數部分中的位數。必須使用0到9之間的整數文字。默認為6。
?初使化參數NLS_TIMESTAMP_FORMAT用于設置默認的timestamp格式。
?}
?>布爾數據類型
?用于存儲邏輯值。
?boolean
?{
? 用于存儲邏輯值true,false和null。
? 只允許對boolean變量執行邏輯操作。
?}
?? lob類型
?大對象(lob)數據類型用于存儲非結構化數據。大小限于4GB。DBMS_LOB程序包用于操作lob數據。
?>bfile
?用于將大型二進制對象存儲在操作系統文件中。即文件定位器。
?定位器包含一個目錄的別名,用于指定目錄的完整路徑。
?bfile數據類型的數據是只讀的,不能修改。
?語法:
?bfilename('目錄別名','文件名')
?其中:
?目錄別名使用create directiry語句創建。
?>blob
?用于將大型二進制對象存儲在數據庫中。blob數據類型可用于事務處理。
?例:
?要在表中插入圖象,先使用create directory 目錄名 as? '系統目錄';創建一個目錄名。
?使用grant read on directory 目錄名 to 用戶;授予讀取權限。
?declare
? l_bfile bfile;
? l_blob blob;
?begin
? insert into 表名('blob類型的列名')
? values (EMPTY_BLOB()) return 列名 into l_blob;
? l_bfile :=BFILENAME('目錄別名','文件名');
? DBMS_LOB.OPEN(l_bfile,DDMS_LOB.FILE_READONLY);? --打開文件
? DBMS_LOB.LOADFROMFIFE(l_blob,l_bfile,DBMS_LOB.GETLENGTH(l_bfile)); --加載到l_blob變量中。
? DBMS_CLOSE(l_bfile); --關閉l_bfile文件。
? commit;
?END;
?/
?*****************************************************
?oracle中插入一個blob數據 (來自Google)
?create or replace directory utllobdir as 'c:/xxx'; --你的BLOB文件所在位置。
?create table bfile_tab (bfile_column BFILE);
?create table t (blob_column BLOB);
?----------------------------------------
?declare
??? a_blob? BLOB;
??? a_bfile BFILE := BFILENAME('UTLLOBDIR','BLOB文件名');
?begin
??? insert into bfile_tab values (a_bfile)
????? returning bfile_column into a_bfile;
??? insert into t values (empty_blob())
????? returning blob_column into a_blob;
??? dbms_lob.fileopen(a_bfile);
??? dbms_lob.loadfromfile(a_blob, a_bfile, dbms_lob.getlength(a_bfile));
??? dbms_lob.fileclose(a_bfile);
??? commit;
?end;
?--------------------------------------------------------------------
?>clob
?用于將大型字符數據存儲在數據庫中。clob變量中的定位器指向大型字符數據的地址。
?插入數據到clob列與普通字符串類似。
?讀取clob數據
?DBMS_LOB.READ(clob類型變量,要讀的字符數,啟始位置(1為最前端),varchar2類型變量)
?--讀取指定clob到varchar2,從開始位置讀多少。
?>nclob
?將大型 nchar數據存儲在數據庫中。nclob數據類型同時支持固定寬度字符和可變寬度字符(Unicode字符數據)。nclob類型的使用方 法與clob類似。
??? 屬性類型
?屬性用于引用變量或數據庫列的數據類型,以及表示表中一行的記錄類型。
?{
?優點:
? .. 不需要知道被引用的列或表的具體數據類型。
? .. 如果更改了被引用對象的數據庫定義,那么pl/sql在運行時變量的數據類型也會隨之更改。
?}
?>%type
?引用某個變量或數據庫列的數據類型來聲名變量。
?語法:
?icode itemfile.itemcode%TYPE;
?其中;
?icode:是變量名稱。
?itemfile.itemcode:是表名.列名。
?**icode的數據類型與itemfile表中itemcode列的數據類型相同。
?>%ROWTYPE
?提供表中一行的記錄類型。
?例:
?emp_rec emp%ROWTYPE;
?**emp_rec被聲明為emp一行的類型。
<*>邏輯比較
?運算符????? 描述
?=? 等于???
?<>,!=? 不等于
?<? 小于
?>? 大于
?<=? 小于等于
?>=? 大于等于
?關系運算符用于比較sql和過程語句中的變量和常量,這些表達式稱為布爾表達式。
?布爾表達式的結果為true,false或null,通常有邏輯運算符and,or和not連接,主要用在條件控制語句中。
?布爾表達式共有3中類型,即數字布爾型,字符布爾型和日期布爾型。
<*>控制結構
?pl/sql提供可通過控制結構來控制命令執行的流程。
?>條件控制
? .. if 條件 then
?? 執行語句....
???? end if;
? .. if 條件 then
????? 執行語句1....
???? else
?? 執行語句2....
???? end if;
? .. if 條件 then
?? 執行語句1....
???? elsif 條件 then
?? 執行語句2....
???? end if;
? .. case 待比較值
?? when 比較值 then 執行語句....
???? when 比較值 then 執行語句....
?? when 比較值 then 執行語句....
?? [else when 執行語句....]
???? end case;
?>循環控制
? .. loop
?? 執行語句....
?? [EXIT<表示強行跳出循環<|EXIT then (條件)<條件不為true就跳出>]
???? end loop;
? .. while 條件 loop
?? 執行語句....
???? end loop;
? .. for counter in [ reverse] value1..value2
???? loop
?? 執行語句....?
???? end loop;
???? 關鍵字reverse在for循環中屬于可選項。只有在需要對值從大到小執行循環時,才會使用reverse關鍵字。
?>順序控制
? >goto語句
? 無條件地將控制權轉到標簽指定的語句。
? 語法:
? goto 標簽名
? 標簽定義方法:<<標簽名>>
? >null語句
? 什么都不做,只是將控制權轉到下一個語句。
<*>動態sql
?Oracle中的動態sql可以通過本地動態sql命令執行,也可以通過DBMS_SQL程序包來執行。
?語法:
?execute immediate 動態sql語句字符串
?[into select語句選擇的記錄值<參數類型>]
?[using? 綁定輸入參數變量<參數值>]
<*>錯誤處理
?>預定義異常
?pl/sql支持的預定義異常:
?異常??? 說明
?ACCESS_INTO_NULL? 在未初始化對象時出現
?CASE_NOTE_FOUND?? 在case語句中的選項與用戶輸入的數據不匹配是出現
?COLLECTION_IS_NULL? 在給尚未初始化的表或數組賦值時出現
?CURSOR_ALREADY_OPEN? 在用戶試圖打開已經打開的游標是出現,在重先打開游標前必須先將其關閉
?DUP_VAL_ON_INDEX? 在用戶試圖將重復的值存儲在使用唯一索引的數據庫列中時出現。
?INVALID_CURSOR?? 在執行非法的游標運算是出現。
?INVALIE_NUMBER?? 在將字符串轉換為數字時出現。
?LOGIN_DENIED?? 在輸入用戶名或密碼無效時出現
?NO_DATA_FOUND?? 在表中不存在請求的行是出現。
?STORAGE_ERROR?? 在內存損壞或pl/sql耗盡內存時出現。
?TOO_MANY_ROWS?? 在執行select into語句后返回多行時出現。
?VALUE_ERROR?? 在產生大小限制錯誤時出現。
?ZERO_DIVIDE?? 以零做除數時出現。
?使用異常的語法:
?exception 異常名稱 then
? 執行異常處理語句....
?>用戶自定義異常
?語法:
? 聲明: 自定義異常名稱 EXCEPTION;
? 使用raise語句顯示引發:raise 自定義異常名稱
? 處理: exception 自定義異常名稱 then
??? 執行異常處理語句....
?>引發應用程序錯誤
?過程RAISE_APPLICATION_ERROR用于創建用戶定義的錯誤信息。
?語法:
?RAISE_APPLICATION_ERROR(error_number,error_message)
?其中:
?error_number:指定的異常編號,必須在-20000和-20999之間的負整數。
?error_message:異常指定的消息文本。長度可答2048字節,錯誤消息是與error_number表示關聯的文本。
十一.游標管理
?游標是構建在pl/sql中,用來查詢數據,獲取記錄集合的指針。
<*>靜態游標
?靜態游標是在編譯時知道其select語句的游標。
?>隱式游標
?Oracle預定義了一個sql的隱式游標,通過檢查隱式游標的屬性可以獲取與最近執行的sql語句相關的信息。
?隱式游標的屬性:
? .. %found:在dml語句影響一行或多行時,%found屬性在返回true。
? .. %notfound:與%found的作用正好相反,如果沒有影響任何行,則返回true。
? .. %rowcount:返回dml語句影響的行數,如果沒有影響行則返回0。
? .. %isopen:返回游標是否已經打開的值。在執行sql語句之后,Oracle自動關閉sql游標,所以隱式游標的%isopen屬性始終為false。
?>顯示游標
?顯示游標是由用戶顯示聲明的游標。根據在游標中定義的查詢,查詢返回的行集合可以包含零行或多行,這些行稱為活動集。游標將指向活動集中的當前行。
?顯示游標的標準操作過程:
?1.聲明游標
?2.打開游標
?3.從游標中獲取記錄
?4.關閉游標
?顯示游標在declare部分的聲明語法:
?cursor cursor_name [(parameter[,parameter..])]
?[return return_type] is select_statement;
?其中:
?cursor_name:是游標的名稱。
?parameter:用于為游標指定輸入參數。
?return_type:定義游標提取的行的類型。
?select_statement:指定游標的查詢語句。
?在聲明游標后可以用下列語句控制游標:
?open:打開游標。
?fetch: 從游標中提取行。
?close: 關閉游標。
?顯示游標同樣有隱式游標的屬性并起相同。
?使用顯示游標刪除或更改:
?如果處理過程中需要刪除或更新行,在定義游標時必須使用select...for update語句,而在執行delete或update時使用where current of 字句指定游標的當前行。
?**提示:select語句必須只包括一個表,而且delete和update語句只有在打開游標并提取特定行之后才能使用。???

總結

以上是生活随笔為你收集整理的Oracle 常识的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

亚洲精品视频免费观看 | av免费在线播放 | 中文字幕精品一区二区三区电影 | 久久久这里有精品 | 久久影院午夜论 | 亚洲一区二区三区四区在线视频 | 日韩电影一区二区三区在线观看 | 国产精品99久久久久久有的能看 | 99精品国产福利在线观看免费 | 免费91麻豆精品国产自产在线观看 | 亚洲免费国产 | 蜜臀久久99精品久久久酒店新书 | 色综合久久88色综合天天 | 91午夜精品 | 欧美视频国产视频 | 天天插天天狠天天透 | 亚洲精品在线播放视频 | 天天曰视频 | 毛片3 | 国产精品99蜜臀久久不卡二区 | 欧美做受高潮 | 日韩av图片| av在线网站免费观看 | 天天操网址 | 四虎在线观看精品视频 | japanesefreesexvideo高潮 | 中文字幕 二区 | 久久婷婷激情 | 久久精品一区二区三区四区 | 久久久综合香蕉尹人综合网 | 久久99影院 | 亚洲人成影院在线 | 日韩精品视频一二三 | 色香com. | 色婷婷综合久久久中文字幕 | 91精品啪在线观看国产线免费 | 丁香久久| 中国精品一区二区 | 国产精品 久久 | 四虎免费在线观看 | 日韩资源在线观看 | 精品一区二区在线观看 | 国产精品wwwwww| 久草在线视频资源 | 色综合天| 一区二区三区免费在线播放 | 婷婷综合导航 | 亚洲视频免费 | 最新久久免费视频 | 91麻豆文化传媒在线观看 | 欧美日韩在线观看视频 | 在线观看中文字幕 | 992tv人人网tv亚洲精品 | 欧美最猛性xxxx | 国产一区二区播放 | 麻豆 91 在线| 亚洲成人动漫在线观看 | 最新日韩在线观看视频 | 久久嗨 | 999久久久久久久久久久 | 国产a免费 | av免费看在线 | 欧美日韩视频 | 精品夜夜嗨av一区二区三区 | 久久国产经典视频 | 五月开心激情网 | 97福利在线观看 | 亚洲精品国产高清 | 人人爽人人舔 | 国产精品成人免费精品自在线观看 | 免费看毛片在线 | 国产麻豆视频网站 | 国产很黄很色的视频 | 97色在线观看 | 国产精品高潮呻吟久久久久 | 欧美日韩国产二区三区 | 亚洲三级影院 | 国产精品成人自产拍在线观看 | 色永久免费视频 | 日批网站免费观看 | 久久中文视频 | 99在线热播 | 99热99热| 69精品视频 | 中文字幕在线网址 | 黄色中文字幕在线 | 一级片色播影院 | 99久久综合国产精品二区 | 欧美日韩色婷婷 | 国产亚洲情侣一区二区无 | 又爽又黄在线观看 | 玖玖在线观看视频 | 色综合天天色 | 在线黄色免费 | 久草视频在线资源站 | 麻豆视频观看 | 毛片1000部免费看 | 久久久久电影 | 日本一区二区不卡高清 | 国产网红在线 | 欧美久久久久久久久久 | 91精品久久久久久久久久久久久 | 国产精品久久99综合免费观看尤物 | 在线国产91 | 中文字幕在线观看免费 | 国产69精品久久99不卡的观看体验 | 久久色网站 | 国产高清久久 | 国产精品女人久久久 | 国产精品一区在线观看 | 久久久久久久网站 | 97超碰中文字幕 | 久久久精品国产一区二区电影四季 | 免费99精品国产自在在线 | 中文字幕电影高清在线观看 | 91视频com | 亚洲国产精品免费 | 国产精品毛片久久久 | 亚洲高清在线视频 | 日韩高清免费在线观看 | 欧美日韩视频一区二区三区 | 精品国产一区二区三区在线观看 | 久久99久久99精品免观看软件 | 国产精品久久久久久久久久99 | 激情五月在线视频 | 免费的黄色的网站 | 日韩中文三级 | 国产999在线| 一区二区三区四区五区六区 | 五月婷婷影视 | 久久久久久久久国产 | 天堂网中文在线 | 亚洲视频综合在线 | 国产精品自产拍在线观看网站 | 精品美女视频 | 国产电影黄色av | 精品免费| 91精品国产91久久久久 | 日韩欧美xxx| 久久精品久久国产 | 免费成人在线网站 | 欧美日韩在线网站 | 韩国精品福利一区二区三区 | 国产免费国产 | 毛片888| 狠狠操狠狠操 | 亚洲一区二区91 | 国产精品精品视频 | 黄色高清视频在线观看 | 中文字幕第一页在线播放 | 国内精品视频在线播放 | 国产香蕉97碰碰久久人人 | 亚洲黄色精品 | 久久久91精品国产一区二区精品 | 91视频-88av | 日韩欧美视频免费在线观看 | 五月在线视频 | 亚洲黄色成人 | 国产理论在线 | 91av在线免费观看 | 亚洲欧美激情插 | 久久永久免费 | 婷婷久久一区二区三区 | 又黄又爽又刺激的视频 | 国产婷婷vvvv激情久 | 97色婷婷人人爽人人 | 黄色视屏免费在线观看 | 国产精品99久久久久久人免费 | 日韩免费电影 | 热热热热热色 | 天天色草 | 中文字幕在线视频第一页 | 国产视频观看 | 午夜av电影| 免费看黄在线 | 麻豆国产精品va在线观看不卡 | 狠狠干五月天 | 在线电影 一区 | 免费色av | 精品国产精品久久一区免费式 | 96国产在线 | 国产一区二区精品91 | 亚洲视频h | 国产探花视频在线播放 | 黄色毛片视频免费观看中文 | 久久久久久久久久久久影院 | 97视频在线 | 中文字幕在线有码 | 午夜精品一区二区三区可下载 | 色噜噜日韩精品欧美一区二区 | 午夜在线资源 | 人人干人人做 | av免费看看 | 色综久久 | 国产精品久久久久久高潮 | 欧美成人日韩 | 亚洲国产精品久久久 | 国产区在线视频 | 久久爱导航 | 国产免费a| 综合久色| 97精品国自产拍在线观看 | 麻豆一精品传二传媒短视频 | 鲁一鲁影院 | 久久精品视频网 | 亚洲精品在线观看不卡 | 在线观看亚洲成人 | 在线视频日韩一区 | 狠狠88综合久久久久综合网 | 国产精品视频资源 | 97人人模人人爽人人少妇 | 91色在线观看 | 91精品爽啪蜜夜国产在线播放 | 欧美xxxx性xxxxx高清 | 国产精品人人做人人爽人人添 | 欧美专区亚洲专区 | 99精品免费久久久久久久久日本 | 成人黄色大片 | 免费高清在线观看成人 | 992tv在线观看 | 亚洲电影免费 | 在线观看免费视频你懂的 | 欧美成人播放 | 在线国产福利 | 涩涩成人在线 | 国产精品久久久777 成人手机在线视频 | 亚洲1区 在线 | 亚洲日本精品视频 | 日日干精品| 色婷婷激情| 黄色免费观看视频 | 最近中文字幕免费观看 | 久久久国产精品人人片99精片欧美一 | 国产 日韩 中文字幕 | 欧美精品免费视频 | 日韩av片在线 | 在线观看中文av | 欧美激情视频在线免费观看 | 天天射狠狠干 | 521色香蕉网站在线观看 | 亚洲人成网站精品片在线观看 | 日日夜夜天天综合 | 一区二区三区在线不卡 | 中文字幕精品一区久久久久 | 欧美精品久久久 | 久久午夜免费视频 | 亚洲精品视频在线观看免费 | 天天做天天看 | 国产高清中文字幕 | www.亚洲精品视频 | 伊人狠狠色丁香婷婷综合 | 久久午夜精品 | 91大神精品视频在线观看 | 亚洲视频一级 | 国产一区在线视频 | 97超碰人人模人人人爽人人爱 | 中文字幕一区二区三区在线观看 | 国产精品综合久久久 | 天天干天天操天天入 | 久精品视频在线观看 | 亚洲播放一区 | 国内精品视频久久 | 亚洲精品黄色片 | 国产99久久 | 国内精品久久久久影院优 | 天天干夜夜夜 | 青青视频一区 | 国产午夜精品久久 | 怡红院成人在线 | 香蕉一区| 免费一级片在线观看 | 精品国产亚洲日本 | 在线观看免费视频你懂的 | 国内久久看 | 青青久草在线视频 | 超碰在线人人草 | 欧美一区二视频在线免费观看 | 亚洲精品88欧美一区二区 | 成人一区二区三区在线 | 在线观看mv的中文字幕网站 | 丁香婷婷色综合亚洲电影 | 日韩欧美在线不卡 | 91成人短视频在线观看 | 中文字幕视频免费观看 | 99婷婷狠狠成为人免费视频 | 美女视频久久黄 | 91网在线观看 | 五月天婷婷视频 | 人人澡超碰碰 | 日韩色区 | 久久综合久久久久88 | 色婷五月| 国产在线观看a | 国产亚洲精品成人av久久影院 | 亚洲黄色在线免费观看 | 国产免码va在线观看免费 | 久久在线精品视频 | 亚洲午夜久久久久久久久久久 | 九九免费在线观看视频 | 色综合色综合色综合 | 亚洲国产精品999 | 日韩免费在线网站 | 在线免费色视频 | 国产精品成人一区二区三区吃奶 | 欧美久久成人 | 麻豆视频免费入口 | 久久视频在线观看中文字幕 | 天天做天天爱天天爽综合网 | 成年人视频在线 | 国产欧美精品一区二区三区四区 | 亚洲精品久久久蜜臀下载官网 | 午夜精品久久久久久99热明星 | 一区二区在线不卡 | 欧美日韩亚洲精品在线 | 草久热 | 久草在线免 | 一级特黄aaa大片在线观看 | 国产91丝袜在线播放动漫 | 黄色资源在线观看 | 亚洲精品久久激情国产片 | 天天舔天天搞 | 成人av动漫在线 | aaa毛片视频| av电影 一区二区 | 99精品久久久久久久 | 色久av| 91视频 - 88av| 日本mv大片欧洲mv大片 | 欧美国产日韩一区二区 | 摸bbb搡bbb搡bbbb| 中文字幕 国产 一区 | 国产视频中文字幕在线观看 | 国产一区二区久久久久 | 男女全黄一级一级高潮免费看 | 欧美一区二区在线看 | 国内久久| 成人啪啪18免费游戏链接 | 久久www免费视频 | 99精品视频在线观看播放 | 国产成视频在线观看 | 成人播放器 | 九九热在线观看视频 | 久久精品老司机 | 天天操天天射天天添 | 97在线免费视频观看 | 日韩乱色精品一区二区 | 在线观看亚洲精品 | 大型av综合网站 | 349k.cc看片app| 日韩色视频在线观看 | 亚洲艳情 | 国产91在线播放 | 91香蕉视频 mp4 | 亚洲 欧洲 国产 日本 综合 | 91视视频在线直接观看在线看网页在线看 | 国产高清在线免费 | 日本一区二区三区免费观看 | 国内精品久久久久国产 | 欧美婷婷色 | 日韩中文字幕国产 | 亚洲综合视频在线播放 | 婷婷深爱网 | 黄色91在线| 丁香九月激情综合 | 亚洲精品国产精品国 | 欧美一区中文字幕 | 成人久久久电影 | 国产精品美女久久久 | 国产一区二区三区四区在线 | 亚洲国产精品激情在线观看 | 久久视频免费看 | 国产在线一区二区三区播放 | 国际精品网 | 中文字幕亚洲高清 | 九九综合九九 | 97在线免费| 99热精品国产 | 一区二区三区在线电影 | 国产精品久久综合 | 成人免费网视频 | 欧美色图p | 五月婷在线 | 午夜久久成人 | 九九热在线观看 | 毛片久久久 | 超碰国产在线播放 | 久久精品99国产精品亚洲最刺激 | 久久久精品视频成人 | 97视频在线观看免费 | 人人草天天草 | 天天操天 | 在线免费av电影 | 色婷婷久久久 | 91麻豆国产福利在线观看 | 精品国内自产拍在线观看视频 | 手机看国产毛片 | 婷婷新五月 | 精品国产乱码久久久久久浪潮 | 成片免费观看视频999 | 一本—道久久a久久精品蜜桃 | 亚洲欧美国产视频 | 中文字幕精品一区 | 黄色a三级| 天天操操操操操操 | 国产精品久久久久久久久久久久午 | 91人人视频在线观看 | 狠狠操91| 91久久丝袜国产露脸动漫 | 欧洲一区二区在线观看 | 日韩欧美一区二区在线播放 | 2000xxx影视| 日韩av图片 | 国产在线1区 | 亚洲第五色综合网 | 欧美日韩国产综合网 | 91精品在线免费观看 | 国产高清无av久久 | 婷婷激情综合五月天 | 国产日韩欧美综合在线 | 久久精品网站免费观看 | 99r在线精品 | 婷婷精品国产一区二区三区日韩 | 久久亚洲欧美日韩精品专区 | 夜夜躁狠狠躁日日躁视频黑人 | 久热国产视频 | 777奇米四色| 综合亚洲视频 | 国产免费观看久久黄 | 亚洲视频免费视频 | 91成版人在线观看入口 | 国产日韩欧美视频在线观看 | 日韩av美女| 黄色片网站大全 | 国产成人在线观看 | 国产麻豆电影在线观看 | 五月视频| 国产永久免费 | 久操视频在线 | 亚洲精品乱码久久久久久写真 | 免费观看国产精品 | 综合久久精品 | 四虎国产精品免费观看视频优播 | 日韩免费一区二区三区 | 五月天色中色 | 91高清免费在线观看 | 天天拍天天爽 | 91色亚洲 | 国产老太婆免费交性大片 | 国产正在播放 | 一级成人免费视频 | 国产精品久久久久久模特 | 天天干夜夜夜操天 | 欧美在线你懂的 | 欧美日韩国产一区 | 亚洲精品在线视频观看 | 国产亚洲精品免费 | 亚洲综合爱| 成人久久国产 | 国产精品久久人 | 日韩久久精品一区二区 | 欧美一级日韩免费不卡 | 国产又粗又长又硬免费视频 | 九九九九免费视频 | 在线91精品 | 热久久最新地址 | 亚洲欧美日韩中文在线 | 五月天激情综合网 | 午夜神马福利 | 超级碰碰碰视频 | 亚洲一二三久久 | 亚洲在线视频网站 | 国产99久久久精品视频 | 亚洲国产精品久久久久 | 久久精彩免费视频 | 国产黄色视 | 亚洲人成影院在线 | 国产精品毛片网 | 人人擦| 色综合综合 | 亚洲va韩国va欧美va精四季 | 91视频免费国产 | 国产传媒一区在线 | 国产日韩欧美在线影视 | 色av婷婷| 看国产黄色大片 | 黄色免费观看网址 | 久草在线中文视频 | 国产视频不卡 | 在线观看av片 | 公开超碰在线 | 色国产在线 | 制服丝袜天堂 | 亚洲 中文字幕av | 国产手机在线 | 久久深夜福利免费观看 | 国产免费不卡 | 一区二区视频在线观看免费 | 欧美a级一区二区 | av3级在线| 欧美黄色软件 | 五月婷婷在线播放 | 操操操人人人 | 亚洲精品高清在线观看 | 国产69久久精品成人看 | 亚洲欧洲一级 | 91精品国产麻豆国产自产影视 | 91精品欧美一区二区三区 | 日韩免费久久 | 亚洲干| 99av在线视频 | 99精品一区二区三区 | 欧美色噜噜 | 国产精品久久久久久高潮 | 亚洲专区 国产精品 | 91看片在线| 日韩中文三级 | 久久免费播放 | 国产一区二区不卡视频 | 久碰视频在线观看 | 午夜精品久久久久久 | 久久精品欧美一区 | 美女视频黄免费的 | 极品美女被弄高潮视频网站 | 美女视频黄的免费的 | 色婷婷激情综合 | 国产一区二区三区免费在线观看 | 激情片av | www.午夜 | 在线精品亚洲 | 六月天综合网 | 一区二区三区四区五区在线 | 久久久久亚洲天堂 | 久操中文字幕在线观看 | 黄色三级在线看 | 亚洲视频在线免费看 | 贫乳av女优大全 | 波多野结衣视频一区二区三区 | 亚洲精品视频二区 | www.亚洲视频 | 欧美精品三级 | 亚洲人成人天堂h久久 | 激情久久久 | 国产午夜精品一区二区三区 | 国产亚洲视频在线观看 | 亚洲精品久久激情国产片 | 久久精品国产久精国产 | 亚洲综合激情五月 | 中文字幕视频 | 日韩午夜三级 | 亚洲精品视频在线观看网站 | 国产精品美女久久久久久网站 | 国产成人免费av电影 | 日韩国产精品一区 | 人人爱爱人人 | 国产露脸91国语对白 | 久久系列 | 日本在线观看一区二区 | 色视频 在线 | 99久久日韩精品视频免费在线观看 | 婷婷在线视频观看 | 亚洲色视频| 久久福利剧场 | 日韩精品视 | www.狠狠色.com | 波多野结衣在线中文字幕 | 91麻豆.com| 91香蕉视频黄色 | 成人av播放| 色片网站在线观看 | 国产系列精品av | 国产视频 久久久 | 中文字幕中文字幕在线一区 | 国产在线专区 | 亚洲va在线va天堂va偷拍 | 中文字幕美女免费在线 | 国产精品视频免费在线观看 | 国产高清视频在线观看 | 亚洲综合视频网 | 久久狠狠干 | 欧美日韩一级久久久久久免费看 | 高清久久久久久 | 超碰日韩在线 | 国产福利在线免费 | 五月香婷| 日本精品一区二区三区在线观看 | 2023天天干| 在线观看一 | 亚洲精品网站在线 | 香蕉影院在线 | 国产一区二区三区久久久 | 久久99久久99免费视频 | 福利片视频区 | 欧美最猛性xxx | 亚洲久久视频 | 91视频免费看片 | 亚洲国产精品传媒在线观看 | 亚洲精品国产精品国 | 天天插天天狠 | 在线激情小视频 | 国产精品涩涩屋www在线观看 | 99久久精品国产亚洲 | 91中文视频| 亚洲涩涩涩涩涩涩 | 97超碰在线人人 | 日韩久久影院 | 亚洲国产中文字幕在线视频综合 | 色视频在线免费 | 国产成人在线播放 | 二区视频在线观看 | 国产精品久久久 | 国产手机免费视频 | 日韩电影一区二区三区在线观看 | 色com| 免费网站看v片在线a | 91精品啪在线观看国产线免费 | 69热国产视频 | 婷婷伊人五月 | 亚洲丝袜一区 | 九九久久久久久久久激情 | 欧美日韩在线观看一区二区 | 青草视频在线 | 欧美黄污视频 | 成人免费毛片aaaaaa片 | 中文在线免费一区三区 | 国语精品免费视频 | 国产免码va在线观看免费 | 久久国产精品免费一区二区三区 | 夜夜操狠狠干 | 久久夜色精品国产亚洲aⅴ 91chinesexxx | 91在线蜜桃臀 | 黄免费在线观看 | 欧美成人黄色 | 久久综合精品一区 | 午夜在线观看一区 | 69久久久久久久 | 香蕉影视| 9999在线| 午夜少妇av | 在线观看91久久久久久 | 色多视频在线观看 | 久久免费一级片 | 麻豆传媒电影在线观看 | www国产在线| 日韩精品一区二区在线观看 | 久久精品亚洲一区二区三区观看模式 | h网站免费在线观看 | 亚洲精品资源在线观看 | ,午夜性刺激免费看视频 | 91视频这里只有精品 | 日韩在线播放av | 最近日本mv字幕免费观看 | 天天爱天天插 | 亚洲第一区精品 | 亚洲黄色a| 欧美国产大片 | 91cn国产在线 | 日本高清中文字幕有码在线 | 欧美性色黄大片在线观看 | 国产精品h在线观看 | 免费成人av电影 | 在线国产日本 | 97精品国产97久久久久久春色 | 黄色软件视频大全免费下载 | 久久色在线播放 | 中文字幕欲求不满 | 日韩av网页 | 免费视频成人 | 97视频免费| 探花系列在线 | 日韩毛片一区 | 日韩1页| 激情久久久久久久久久久久久久久久 | 激情小说 五月 | 国产精品观看在线亚洲人成网 | 免费国产一区二区视频 | 亚洲视频999 | 免费看成人a | 国产一区二区视频在线播放 | 高清免费在线视频 | 中文字幕 国产 一区 | 免费观看一区二区三区视频 | 亚洲精品在线观看不卡 | 四虎8848免费高清在线观看 | 亚洲 欧美 成人 | 国产在线a免费观看 | 国产精品久久久久久久久婷婷 | 黄色成人91 | 九九久久电影 | 91福利试看| 成人动漫一区二区三区 | 高清国产午夜精品久久久久久 | 99免费看片 | www.亚洲精品 | 视频91 | 一区二区三区四区精品视频 | 久久伊人综合 | 亚洲激情 欧美激情 | 麻豆传媒一区二区 | 国产精品免费成人 | 精品特级毛片 | 99久久精品网 | 日韩久久精品一区二区 | 免费三级黄色片 | 五月天婷亚洲天综合网精品偷 | 伊人天天操| 美女免费黄视频网站 | 亚洲人片在线观看 | 日批视频国产 | 中文字幕国产精品 | 国产成免费视频 | 久草网首页 | av女优中文字幕在线观看 | 欧美日韩国产二区 | 五月激情五月激情 | 日韩色综合 | 色婷婷国产精品一区在线观看 | 久久久一本精品99久久精品66 | 国产精品日韩 | 国产1级毛片 | 国产精品系列在线观看 | 中文字幕在线观看网站 | 国产在线免费 | 国产精品69av | 日韩欧美国产精品 | 91视频免费看片 | 91视频在线免费看 | 日韩欧美在线高清 | 国产精品青草综合久久久久99 | 久久精精品视频 | 天天草天天爽 | 婷婷午夜激情 | 黄色av一区| 国产一级视频在线 | 日韩免费在线网站 | 日韩理论电影网 | 免费视频久久久久久久 | 久久久精品影视 | 日韩xxxx视频 | 亚州精品在线视频 | 欧美日韩一区二区三区不卡 | 激情五月综合网 | 免费观看国产视频 | 91最新地址永久入口 | 日本婷婷色 | 国产精品久久99精品毛片三a | 欧美日本啪啪无遮挡网站 | 婷婷综合成人 | 国产精品免费视频久久久 | 97精品国自产拍在线观看 | 99久久久国产精品免费观看 | 亚洲综合激情 | 日韩丝袜| 午夜性生活片 | 国产精品乱码久久久 | 人人爽人人澡 | 色婷婷狠狠五月综合天色拍 | 日韩精品视频久久 | 亚洲四虎在线 | 国产中文字幕视频 | 久久久久久久久综合 | 一区二区三区精品在线视频 | 91麻豆精品国产自产在线 | 91免费在线 | 久久久国产精品久久久 | 狠狠干网址 | 在线免费色| 成人午夜黄色影院 | 99久久精品免费看国产一区二区三区 | 欧美在线一级片 | 久久精品久久精品久久39 | 视频一区二区精品 | 成人av电影免费 | 日韩理论片在线观看 | 亚洲在线黄色 | 亚洲精品综合一二三区在线观看 | 国产黑丝袜在线 | 91麻豆福利 | 国产精品欧美一区二区 | 超碰97人人射妻 | 日韩精品视频在线观看网址 | 在线激情影院一区 | 国产乱对白刺激视频在线观看女王 | 园产精品久久久久久久7电影 | 婷婷国产视频 | 97视频网址 | 91精品国自产在线观看欧美 | 操操日日 | 最新一区二区三区 | 一级免费片 | 日韩免费观看av | 午夜久久久久久久久久影院 | 日韩精品久久一区二区 | 国产中文字幕在线视频 | 国产精品久久久久久久久久妇女 | 黄av资源 | 国产精品免费观看国产网曝瓜 | 97超视频在线观看 | 91在线观看视频 | 欧美在线视频一区二区 | 欧美精品久久人人躁人人爽 | 久久视频这里有久久精品视频11 | 91av视频网| 2023国产精品自产拍在线观看 | 麻豆一二三精选视频 | 欧美三级在线播放 | 婷婷电影在线观看 | 成人av影院在线观看 | 久久草草影视免费网 | 日本中文乱码卡一卡二新区 | 波多野结衣在线播放一区 | 麻豆国产电影 | 麻豆免费在线视频 | 午夜电影av | 日本xxxx.com | 最新日本中文字幕 | 国产日本亚洲 | 欧美精品九九99久久 | 色资源网免费观看视频 | 日韩精品视频免费在线观看 | 国产视频97| 青青草国产免费 | 午夜精品久久久 | 91精品一区二区在线观看 | 亚洲专区免费观看 | 九九久久久 | 天天爽天天射 | 久久亚洲精品电影 | 久久久午夜精品福利内容 | 国产成人高清 | 综合网色| 久草精品免费 | 国产精品青草综合久久久久99 | 精品国产一区二区三区日日嗨 | 最新av在线播放 | 日韩高清免费观看 | 在线观看精品一区 | 中国老女人日b | 国产香蕉久久 | 91成人欧美 | 99r国产精品 | 婷婷色网站 | 国产97在线看 | 毛片网站免费 | 亚洲精品免费在线观看视频 | 99国产视频 | 亚洲成人第一区 | 精品国产一区二区三区久久影院 | 国产精华国产精品 | 色婷婷综合久久久中文字幕 | 天天干夜夜夜操天 | 国内精品久久久久影院日本资源 | 国产精品一区二区免费看 | 亚洲精品www久久久久久 | 黄色福利网 | 日本特黄一级 | 久久精品视 | 国产精品爽爽爽 | 久热色超碰 | 青青草国产免费 | 国产精品美女www爽爽爽视频 | 在线观看国产区 | 亚洲一区二区精品3399 | 国产美女免费观看 | 一区二区在线影院 | 久久无码精品一区二区三区 | 午夜精品一区二区三区免费视频 | 白丝av在线 | 一级淫片在线观看 | 天天鲁一鲁摸一摸爽一爽 | 97成人在线 | 91视频一8mav | 精品视频免费久久久看 | 国产精品免费久久 | 亚洲开心色| 国产高清成人 | 天天综合入口 | 日韩在线免费视频 | 91片黄在线观看 | 国产精品久久久久久久午夜片 | 日韩视频1区 | 在线精品一区二区 | 国产精品视频免费观看 | 99视频久久| 蜜臀av性久久久久蜜臀aⅴ流畅 | 91禁在线看 | 日日干天天射 | 在线观看av国产 | 成人av资源网 | 亚洲精品中文在线观看 | 久久激情电影 | 免费99精品国产自在在线 | 最新av免费| 五月激情亚洲 | 91久久久国产精品 | 美女久久精品 | 麻豆国产在线视频 | 91丨九色丨高潮 | 中文国产字幕 | 国产日产高清dvd碟片 | 日韩欧美一区二区三区黑寡妇 | 欧美成人手机版 | 黄色中文字幕 | 日韩在线小视频 | 探花视频在线版播放免费观看 | 欧美性极品xxxx做受 | 天天爱天天射 | 亚洲精品欧美专区 | 亚洲欧美色婷婷 | 国产精品亚洲成人 | 999久久久精品视频 日韩高清www | 久久免费视频7 | 精品国产乱码一区二区三区在线 | 日韩大片在线免费观看 | 国产精品专区在线观看 | 国产超碰在线观看 | 成人一级片视频 | 丁香综合| 天天干天天做天天操 | 97干com | 992tv人人草| 日本久久久久 | 国产精彩视频一区二区 | 天天看天天干天天操 | 亚洲年轻女教师毛茸茸 | 五月天亚洲综合 | 亚洲高清国产视频 | 国产色在线 | 美女网站视频一区 | 天天干天天射天天插 | 国产精品9区 | 国产中文字幕大全 | 亚洲一区天堂 | 久草色在线观看 | 欧美粗又大 | 国产中文字幕国产 | 一区二区三区四区免费视频 | 六月丁香久久 | 精品一区二区在线免费观看 | 99色亚洲| 国产精品久久久久久吹潮天美传媒 | 亚洲视频久久久久 | 在线成人短视频 | 99精品国产成人一区二区 | 成人免费在线观看电影 | 日韩a级免费视频 | av电影一区| 国产美女精品视频 | 日韩精品专区在线影院重磅 | 99视频精品全部免费 在线 | 成人欧美亚洲 | av动态图片 | 国产日本亚洲 | 国产精品免费观看视频 | 日韩一区二区三 | 黄色片网站大全 | 日韩中文字幕视频在线 | 久草电影在线 | 国产美女主播精品一区二区三区 | 狠狠狠色丁香婷婷综合久久88 | 人人澡人摸人人添学生av | 激情五月婷婷激情 | 日韩av一区二区三区在线观看 | 国产一区二区在线影院 | 国产在线资源 | 91香蕉视频在线下载 | 免费观看av| 午夜黄色一级片 | 亚洲国产精品第一区二区 | 免费看一级黄色大全 | 毛片3 | 五月天婷婷免费视频 | 狠狠狠色丁香综合久久天下网 | 一区二区三区在线播放 | 亚洲欧美日韩国产一区二区 | 国产伦理久久精品久久久久_ | 视频在线观看国产 | 国产黄色在线观看 | 中文字幕免费不卡视频 | 深爱五月激情五月 | 国产麻豆精品久久 | 色婷婷亚洲精品 | 国产一性一爱一乱一交 | 91亚洲欧美 | 黄色毛片在线看 | 成人av资源 | 成人a视频在线观看 | www.久久久.com | 91精品国产92久久久久 | 视频成人免费 | 丁香激情视频 | 久久69精品久久久久久久电影好 | 国产精品美女久久久久久久久 | 五月综合网站 | 久久99在线 | 亚洲一区网站 | 88av网站| 久久久久电影 | 91精品1区2区|