亚洲欧洲日本精品_日韩亚洲综合在线_成年人免费在线视频网站_日本中文字幕不卡免费_影音先锋中文字幕一区_男人的天堂网页_欧美成年人视频_国产亚洲高清在线观看_国产美女免费无遮挡_久久婷婷一区二区三区

>> 微信網(wǎng)站-自助建站
西安做網(wǎng)站公司_西安做網(wǎng)站的公司_西安網(wǎng)站建設(shè)公司
首 頁
西安網(wǎng)站建設(shè)
西安域名注冊
西安網(wǎng)站空間
西安企業(yè)郵局
西安網(wǎng)站推廣
網(wǎng)站知識(shí)中心
關(guān)于玖佰網(wǎng)絡(luò)
西安做網(wǎng)站公司_西安做網(wǎng)站的公司_西安網(wǎng)站建設(shè)公司
知識(shí)中心
建站常見問題-->
域名空間企郵-->
網(wǎng)站建設(shè)推廣-->
網(wǎng)站方案優(yōu)化-->
服務(wù)指南
最新文章
西安學(xué)校教育行業(yè)網(wǎng)站建設(shè)方案
西安電子商務(wù)網(wǎng)站建設(shè)解決方案
西安酒店餐飲行業(yè)網(wǎng)站建設(shè)方案
西安旅游服務(wù)行業(yè)網(wǎng)站建設(shè)方案
西安醫(yī)院醫(yī)療行業(yè)網(wǎng)站建設(shè)方案
西安政府電子政務(wù)網(wǎng)站建設(shè)方案
西安生產(chǎn)制造行業(yè)網(wǎng)站建設(shè)方案
做好網(wǎng)站原創(chuàng)內(nèi)容設(shè)計(jì)的五大要點(diǎn)
  您現(xiàn)在的位置: 西安做網(wǎng)站_西安玖佰網(wǎng)絡(luò) > 知識(shí)中心 > 網(wǎng)站建設(shè)推廣 > 正文
SQL基本語句,SQL基本語法
西安玖佰網(wǎng)絡(luò) m.multiweal.cn  點(diǎn)擊數(shù):  更新時(shí)間:2009/4/17 14:02:01

  掌握SQL四條最基本的數(shù)據(jù)操作語句:Insert,Select,Update和Delete。

   練掌握SQL是數(shù)據(jù)庫用戶的寶貴財(cái) 富。在本文中,我們將引導(dǎo)你掌握四條最基本的數(shù)據(jù)操作語句—SQL的核心功能—來依次介紹比較操作符、選擇斷言以及三值邏輯。當(dāng)你完成這些學(xué)習(xí)后,顯然你已經(jīng)開始算是精通SQL了。

  在我們開始之前,先使用CREATE TABLE語句來創(chuàng)建一個(gè)表(如圖1所示)。DDL語句對數(shù)據(jù)庫對象如表、列和視進(jìn)行定義。它們并不對表中的行進(jìn)行處理,這是因?yàn)镈DL語句并不處理數(shù)據(jù)庫中實(shí)際的數(shù)據(jù)。這些工作由另一類SQL語句—數(shù)據(jù)操作語言(DML)語句進(jìn)行處理。

  SQL中有四種基本的DML操作:INSERT,SELECT,UPDATE和DELETE。由于這是大多數(shù)SQL用戶經(jīng)常用到的,我們有必要在此對它們進(jìn)行一一說明。在圖1中我們給出了一個(gè)名為EMPLOYEES的表。其中的每一行對應(yīng)一個(gè)特定的雇員記錄。請熟悉這張表,我們在后面的例子中將要用到它。

  INSERT語句

  用戶可以用INSERT語句將一行記錄插入到指定的一個(gè)表中。例如,要將雇員John Smith的記錄插入到本例的表中,可以使用如下語句:

  INSERT INTO EMPLOYEES VALUES ('Smith','John','1980-06-10','Los Angles',16,45000);

  通過這樣的INSERT語句,系統(tǒng)將試著將這些值填入到相應(yīng)的列中。這些列按照我們創(chuàng)建表時(shí)定義的順序排列。在本例中,第一個(gè)值“Smith”將填到第一個(gè)列LAST_NAME中;第二個(gè)值“John”將填到第二列FIRST_NAME中……以此類推。

  我們說過系統(tǒng)會(huì)“試著”將值填入,除了執(zhí)行規(guī)則之外它還要進(jìn)行類型檢查。如果類型不符(如將一個(gè)字符串填入到類型為數(shù)字的列中),系統(tǒng)將拒絕這一次操作并返回一個(gè)錯(cuò)誤信息。

  如果SQL拒絕了你所填入的一列值,語句中其他各列的值也不會(huì)填入。這是因?yàn)镾QL提供對事務(wù)的支持。一次事務(wù)將數(shù)據(jù)庫從一種一致性轉(zhuǎn)移到另一種一致性。如果事務(wù)的某一部分失敗,則整個(gè)事務(wù)都會(huì)失敗,系統(tǒng)將會(huì)被恢復(fù)(或稱之為回退)到此事務(wù)之前的狀態(tài)。

   回到原來的INSERT的例子,請注意所有的整形十進(jìn)制數(shù)都不需要用單引號(hào)引起來,而字符串和日期類型的值都要用單引號(hào)來區(qū)別。為了增加可讀性而在數(shù)字間插入逗號(hào)將會(huì)引起錯(cuò)誤。記住,在SQL中逗號(hào)是元素的分隔符。

  同樣要注意輸入文字值時(shí)要使用單引號(hào)。雙引號(hào)用來封裝限界標(biāo)識(shí)符。

  對于日期類型,我們必須使用SQL標(biāo)準(zhǔn)日期格式(yyyy-mm-dd),但是在系統(tǒng)中可以進(jìn)行定義,以接受其他的格式。當(dāng)然,2000年臨近,請你最好還是使用四位來表示年份。

  既然你已經(jīng)理解了INSERT語句是怎樣工作的了,讓我們轉(zhuǎn)到EMPLOYEES表中的其他部分:

  INSERT INTO EMPLOYEES VALUES ('Bunyan','Paul','1970-07-04','Boston',12,70000);

  INSERT INTO EMPLOYEES VALUES ('John','Adams','1992-01-21','Boston',20,100000);

  INSERT INTO EMPLOYEES VALUES ('Smith','Pocahontas','1976-04-06','Los Angles',12,100000);

  INSERT INTO EMPLOYEES VALUES ('Smith','Bessie','1940-05-02','Boston',5,200000);

  INSERT INTO EMPLOYEES VALUES ('Jones','Davy','1970-10-10','Boston',8,45000);

  INSERT INTO EMPLOYEES VALUES ('Jones','Indiana','1992-02-01','Chicago',NULL,NULL);

  在最后一項(xiàng)中,我們不知道Jones先生的工薪級(jí)別和年薪,所以我們輸入NULL(不要引號(hào))。NULL是SQL中的一種特殊情況,我們以后將進(jìn)行詳細(xì)的討論。現(xiàn)在我們只需認(rèn)為NULL表示一種未知的值。

  有時(shí),像我們剛才所討論的情況,我們可能希望對某一些而不是全部的列進(jìn)行賦值。除了對要省略的列輸入NULL外,還可以采用另外一種INSERT語句,如下:

  INSERT INTO EMPLOYEES(FIRST_NAME, LAST_NAME,HIRE_DATE, BRANCH_OFFICE)

  VALUE(

   'Indiana','Jones','1992-02-01','Indianapolis');

  這樣,我們先在表名之后列出一系列列名。未列出的列中將自動(dòng)填入缺省值,如果沒有設(shè)置缺省值則填入NULL。請注意我們改變了列的順序,而值的順序要對應(yīng)新的列的順序。如果該語句中省略了FIRST_NAME和LAST_NAME項(xiàng)(這兩項(xiàng)規(guī)定不能為空),SQL操作將失敗。

  讓我們來看一看上述INSERT語句的語法圖:

  INSERT INTO table

   [(column { ,column})]

  VALUES

   (columnvalue [{,columnvalue}]);

  和前一篇文章中一樣,我們用方括號(hào)來表示可選項(xiàng),大括號(hào)表示可以重復(fù)任意次數(shù)的項(xiàng)(不能在實(shí)際的SQL語句中使用這些特殊字符)。VALUE子句和可選的列名列表中必須使用圓括號(hào)。

  SELECT語句

  SELECT語句可以從一個(gè)或多個(gè)表中選取特定的行和列。因?yàn)椴樵兒蜋z索數(shù)據(jù)是數(shù)據(jù)庫管理中最重要的功能,所以SELECT語句在SQL中是工作量最大的部分。實(shí)際上,僅僅是訪問數(shù)據(jù)庫來分析數(shù)據(jù)并生成報(bào)表的人可以對其他SQL語句一竅不通。

  SELECT語句的結(jié)果通常是生成另外一個(gè)表。在執(zhí)行過程中系統(tǒng)根據(jù)用戶的標(biāo)準(zhǔn)從數(shù)據(jù)庫中選出匹配的行和列,并將結(jié)果放到臨時(shí)的表中。在直接SQL(direct SQL)中,它將結(jié)果顯示在終端的顯示屏上,或者將結(jié)果送到打印機(jī)或文件中。也可以結(jié)合其他SQL語句來將結(jié)果放到一個(gè)已知名稱的表中。

  SELECT語句功能強(qiáng)大。雖然表面上看來它只用來完成本文第一部分中提到的關(guān)系代數(shù)運(yùn)算“選擇”(或稱“限制”),但實(shí)際上它也可以完成其他兩種關(guān)系運(yùn)算—“投影”和“連接”,SELECT語句還可以完成聚合計(jì)算并對數(shù)據(jù)進(jìn)行排序。

  SELECT語句最簡單的語法如下:

  SELECT columns FROM tables;

  當(dāng)我們以這種形式執(zhí)行一條SELECT語句時(shí),系統(tǒng)返回由所選擇的列以及用戶選擇的表中所有指定的行組成的一個(gè)結(jié)果表。這就是實(shí)現(xiàn)關(guān)系投影運(yùn)算的一個(gè)形式。

  讓我們看一下使用圖1中EMPLOYEES表的一些例子(這個(gè)表是我們以后所有SELECT語句實(shí)例都要使用的。而我們在圖2和圖3中給出了查詢的實(shí)際結(jié)果。我們將在其他的例子中使用這些結(jié)果)。

  假設(shè)你想查看雇員工作部門的列表。那下面就是你所需要編寫的SQL查詢:

  SELECT BRANCH_OFFICE FROM EMPLOYEES;

  以上SELECT語句的執(zhí)行將產(chǎn)生如圖2中表2所示的結(jié)果。

  由于我們在SELECT語句中只指定了一個(gè)列,所以我們的結(jié)果表中也只有一個(gè)列。注意結(jié)果表中具有重復(fù)的行,這是因?yàn)橛卸鄠(gè)雇員在同一部門工作(記住SQL從所選的所有行中將值返回)。要消除結(jié)果中的重復(fù)行,只要在SELECT語句中加上DISTINCT子句:

  SELECT DISTINCT BRANCH_OFFICE FROM EMPLOYEES;

  這次查詢的結(jié)果如表3所示。

  現(xiàn)在已經(jīng)消除了重復(fù)的行,但結(jié)果并不是按照順序排列的。如果你希望以字母表順序?qū)⒔Y(jié)果列出又該怎么做呢?只要使用ORDER BY子句就可以按照升序或降序來排列結(jié)果:

  SELECT DISTINCT BRANCH_OFFICE FROM EMPLOYEES ORDER BY BRANCH_OFFICE ASC;

  這一查詢的結(jié)果如表4所示。請注意在ORDER BY之后是如何放置列名BRANCH _OFFICE的,這就是我們想要對其進(jìn)行排序的列。為什么即使是結(jié)果表中只有一個(gè)列時(shí)我們也必須指出列名呢?這是因?yàn)槲覀冞能夠按照表中其他列進(jìn)行排序,即使它們并不顯示出來。列名BRANCH_ OFFICE之后的關(guān)鍵字ASC表示按照升序排列。如果你希望以降序排列,那么可以用關(guān)鍵字DESC。

  同樣我們應(yīng)該指出ORDER BY子句只將臨時(shí)表中的結(jié)果進(jìn)行排序;并不影響原來的表。

  假設(shè)我們希望得到按部門排序并從工資最高的雇員到工資最低的雇員排列的列表。除了工資括號(hào)中的內(nèi)容,我們還希望看到按照聘用時(shí)間從最近聘用的雇員開始列出的列表。以下是你將要用到的語句:

  SELECT BRANCH_OFFICE,FIRST_NAME,LAST_NAME,SALARY,HIRE_DATE FROM EMPLOYEES ORDER BY SALARY DESC,HIRE_DATE DESC;

  這里我們進(jìn)行了多列的選擇和排序。排序的優(yōu)先級(jí)由語句中的列名順序所決定。SQL將先對列出的第一個(gè)列進(jìn)行排序。如果在第一個(gè)列中出現(xiàn)了重復(fù)的行時(shí),這些行將被按照第二列進(jìn)行排序,如果在第二列中又出現(xiàn)了重復(fù)的行時(shí),這些行又將被按照第三列進(jìn)行排序……如此類推。這次查詢的結(jié)果如表5所示。

  將一個(gè)很長的表中的所有列名寫出來是一件相當(dāng)麻煩的事,所以SQL允許在選擇表中所有的列時(shí)使用*號(hào):

  SELECT * FROM EMPLOYEES;

  這次查詢返回整個(gè)EMPLOYEES表,如表1所示。

   下面我們對開始時(shí)給出的SELECT語句的語法進(jìn)行一下更新(豎直線表示一個(gè)可選項(xiàng),允許在其中選擇一項(xiàng)。):

  SELECT [DISTINCT]

   (column [{, columns}])| *

  FROM table [ {, table}]

  [ORDER BY column [ASC] | DESC

   [ {, column [ASC] | DESC }]];

  定義選擇標(biāo)準(zhǔn)

  在我們目前所介紹的SELECT語句中,我們對結(jié)果表中的列作出了選擇但返回的是表中所有的行。讓我們看一下如何對SELECT語句進(jìn)行限制使得它只返回希望得到的行:

  SELECT columns FROM tables [WHERE predicates];

  WHERE子句對條件進(jìn)行了設(shè)置,只有滿足條件的行才被包括到結(jié)果表中。這些條件由斷言(predicate)進(jìn)行指定(斷言指出了關(guān)于某件事情的一種可能的事實(shí))。如果該斷言對于某個(gè)給定的行成立,該行將被包括到結(jié)果表中,否則該行被忽略。在SQL語句中斷言通常通過比較來表示。例如,假如你需要查詢所有姓為Jones的職員,則可以使用以下SELECT語句:

  SELECT * FROM EMPLOYEES WHERE LAST_NAME = 'Jones';

  LAST_NAME = 'Jones'部分就是斷言。在執(zhí)行該語句時(shí),SQL將每一行的LAST_NAME列與“Jones”進(jìn)行比較。如果某一職員的姓為“Jones”,即斷言成立,該職員的信息將被包括到結(jié)果表中(見表6)。

  使用最多的六種比較

  我們上例中的斷言包括一種基于“等值”的比較(LAST_NAME = 'Jones'),但是SQL斷言還可以包含其他幾種類型的比較。其中最常用的為:

  等于 =

  不等于 <>

  小于 <

  大于 >

  小于或等于 <=

  大于或等于 >=

  下面給出了不是基于等值比較的一個(gè)例子:

  SELECT * FROM EMPLOYEES WHERE SALARY > 50000;

  這一查詢將返回年薪高于$50,000.00的職員(參見表7)。

  邏輯連接符

  有時(shí)我們需要定義一條不止一種斷言的SELECT語句。舉例來說,如果你僅僅想查看Davy Jones的信息的話,表6中的結(jié)果將是不正確的。為了進(jìn)一步定義一個(gè)WHERE子句,用戶可以使用邏輯連接符AND,OR和NOT。為了只得到職員Davy Jones的記錄,用戶可以輸入如下語句:

  SELECT * FROM EMPLOYEES WHERE LAST_NAME = 'Jones' AND FIRST_NAME = 'Davy';

  在本例中,我們通過邏輯連接符AND將兩個(gè)斷言連接起來。只有兩個(gè)斷言都滿足時(shí)整個(gè)表達(dá)式才會(huì)滿足。如果用戶需要定義一個(gè)SELECT語句來使得當(dāng)其中任何一項(xiàng)成立就滿足條件時(shí),可以使用OR連接符:

  SELECT * FROM EMPLOYEES WHERE LAST_NAME = 'Jones' OR LAST_NAME = 'Smith';

  有時(shí)定義一個(gè)斷言的最好方法是通過相反的描述來說明。如果你想要查看除了Boston辦事處的職員以外的其他所有職員的信息時(shí),你可以進(jìn)行如下的查詢:

  SELECT * FROM EMPLOYEES WHERE NOT(BRANCH_OFFICE = 'Boston');

  關(guān)鍵字NOT后面跟著用圓括號(hào)括起來的比較表達(dá)式。其結(jié)果是對結(jié)果取否定。如果某一職員所在部門的辦事處在Boston,括號(hào)內(nèi)的表達(dá)式返回true,但是NOT操作符將該值取反,所以該行將不被選中。

  斷言可以與其他的斷言嵌套使用。為了保證它們以正確的順序進(jìn)行求值,可以用括號(hào)將它們括起來:

  SELECT * FROM EMPLOYEES WHERE (LAST_NAME = 'Jones' AND FIRST_NAME = 'Indiana') OR (LAST_NAME = 'Smith' AND FIRST_NAME = 'Bessie');

  SQL沿用數(shù)學(xué)上標(biāo)準(zhǔn)的表達(dá)式求值的約定—圓括號(hào)內(nèi)的表達(dá)式將最先進(jìn)行求值,其他表達(dá)式將從左到右進(jìn)行求值。

  以上對邏輯連接符進(jìn)行了說明,在對下面的內(nèi)容進(jìn)行說明之前,我們再一次對SELECT語句的語法進(jìn)行更新:

  SELECT [DISTINCT]

   (column [{, column } ] )| *

  FROM table [ { , table} ]

  [ORDER BY column [ASC] | [DESC

  [{ , column [ASC] | [DESC } ] ]

  WHERE predicate [ { logical-connector predicate } ];

  NULL和三值邏輯

  在SQL中NULL是一個(gè)復(fù)雜的話題,關(guān)于NULL的詳細(xì)描述更適合于在SQL的高級(jí)教程而不是現(xiàn)在的入門教程中進(jìn)行介紹。但由于NULL需要進(jìn)行特殊處理,并且你也很可能會(huì)遇到它,所以我們還是簡略地進(jìn)行一下說明。

  首先,在斷言中進(jìn)行NULL判斷時(shí)需要特殊的語法。例如,如果用戶需要顯示所有年薪未知的職員的全部信息,用戶可以使用如下SELECT語句:

  SELECT * FROM EMPLOYEES WHERE SALARY IS NULL;

  相反,如果用戶需要所有已知年薪數(shù)據(jù)的職員的信息,你可以使用以下語句:

  SELECT * FROM EMPLOYEES WHERE SALARY IS NOT NULL;

  請注意我們在列名之后使用了關(guān)鍵字IS NULL或IS NOT NULL,而不是標(biāo)準(zhǔn)的比較形式:COLUMN = NULL、COLUMN <> NULL或是邏輯操作符NOT(NULL)。

  這種形式相當(dāng)簡單。但當(dāng)你不明確地測試NULL(而它們確實(shí)存在)時(shí),事情會(huì)變得很混亂。

  例如,回過頭來看我們圖1中的EM-PLOYEES表,可以看到Indiana Jones的工薪等級(jí)或年薪值都是未知的。這兩個(gè)列都包含NULL。可以想象運(yùn)行如下的查詢:

  SELECT * FROM EMPLOYEES WHERE GRADE <= SALARY;

  此時(shí),Indiana Jones應(yīng)該出現(xiàn)在結(jié)果表中。因?yàn)镹ULL都是相等的,所以可以想象它們是能夠通過GRADE小于等于SALARY的檢查的。這其實(shí)是一個(gè)毫無疑義的查詢,但是并沒有關(guān)系。SQL允許進(jìn)行這樣的比較,只要兩個(gè)列都是數(shù)字類型的。然而,Indiana Jones并沒有出現(xiàn)在查詢的結(jié)果中,為什么?

  正如我們早先提到過的,NULL表示未知的值(而不是象某些人所想象的那樣表示一個(gè)為NULL的值)。對于SQL來說意味著這個(gè)值是未知的,而只要這個(gè)值為未知,就不能將其與其他值比較(即使其他值也是NULL)。所以SQL允許除了在true 和false之外還有第三種類型的真值,稱之為“非確定”(unknown)值。

  如果比較的兩邊都是NULL,整個(gè)斷言就被認(rèn)為是非確定的。將一個(gè)非確定斷言取反或使用AND或OR與其他斷言進(jìn)行合并之后,其結(jié)果仍是非確定的。由于結(jié)果表中只包括斷言值為“真”的行,所以NULL不可能滿足該檢查。從而需要使用特殊的操作符IS NULL和IS NOT NULL。

  UPDATE語句

  UPDATE語句允許用戶在已知的表中對現(xiàn)有的行進(jìn)行修改。

  例如,我們剛剛發(fā)現(xiàn)Indiana Jones的等級(jí)為16,工資為$40,000.00,我們可以通過下面的SQL語句對數(shù)據(jù)庫進(jìn)行更新(并清除那些煩人的NULL)。

  UPDATE EMPLOYEES SET GRADE = 16, SALARY = 40000 WHERE FIRST_NAME = 'Indiana' AND LAST_NAME = 'Jones';

  上面的例子說明了一個(gè)單行更新,但是UPDATE語句可以對多行進(jìn)行操作。滿足WHERE條件的所有行都將被更新。如果,你想讓Boston辦事處中的所有職員搬到New York,你可以使用如下語句:

  UPDATE EMPLOYEES SET BRANCH_OFFICE = 'New York' WHERE BRANCH_OFFICE = 'Boston';

  如果忽略WHERE子句,表中所有行中的部門值都將被更新為'New York'。

  UPDATE語句的語法流圖如下面所示:

  UPDATE table

  SET column = value [{, column = value}]

  [ WHERE predicate [ { logical-connector predicate}]];

  DELETE語句

  DELETE語句用來刪除已知表中的行。如同UPDATE語句中一樣,所有滿足WHERE子句中條件的行都將被刪除。由于SQL中沒有UNDO語句或是“你確認(rèn)刪除嗎?”之類的警告,在執(zhí)行這條語句時(shí)千萬要小心。如果決定取消Los Angeles辦事處并解雇辦事處的所有職員,這一卑鄙的工作可以由以下這條語句來實(shí)現(xiàn):

  DELETE FROM EMPLOYEES WHERE BRANCH_OFFICE = 'Los Angeles';

  如同UPDATE語句中一樣,省略WHERE子句將使得操作施加到表中所有的行。

  DELETE語句的語法流圖如下面所示:

  DELETE FROM table

  [WHERE predicate [ { logical-connector predicate} ] ];

  現(xiàn)在我們完成了數(shù)據(jù)操作語言(DML)的主要語句的介紹。我們并沒有對SQL能完成的所有功能進(jìn)行說明。SQL還提供了許多的功能,如求平均值、求和以及其他對表中數(shù)據(jù)的計(jì)算,此外SQL還能完成從多個(gè)表中進(jìn)行查詢(多表查詢,或稱之為連接)的工作。這種語言還允許你使用GRANT和REVOKE命令控制使用者的數(shù)據(jù)訪問權(quán)限。

 
我們專注于:西安網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計(jì),網(wǎng)站推廣,網(wǎng)站改版,網(wǎng)站維護(hù),域名注冊,網(wǎng)站空間等服務(wù)
[西安玖佰網(wǎng)絡(luò)http://m.multiweal.cn/] 專業(yè)的西安做網(wǎng)站公司。
  • 上一篇文章:
  • 下一篇文章:
  • 網(wǎng)站地圖 | 友情鏈接 | 聯(lián)系方式 | 文檔下載 | 人才招聘 | 付款方式 | 技術(shù)論壇
    西安做網(wǎng)站 西安建網(wǎng)站電話:15339190980 / 029-85535950 Email:900c@163.com
    西安玖佰網(wǎng)絡(luò) m.multiweal.cn Copyright 2006-2021 版權(quán)所有 備案號(hào):陜ICP備08103580號(hào)
    西安網(wǎng)站建設(shè) 西安做網(wǎng)站公司 西安網(wǎng)站制作 西安做網(wǎng)站的公司
    點(diǎn)擊這里給我發(fā)消息
    點(diǎn)擊這里給我發(fā)消息
    點(diǎn)擊這里給我發(fā)消息
    點(diǎn)擊這里給我發(fā)消息
    jiyouzz国产精品久久| 久久久久久成人精品| 国产91富婆露脸刺激对白| 三级小说欧洲区亚洲区| caoporn免费在线视频| 狠狠色噜噜狠狠狠8888米奇 | 神马影院一区二区三区| 欧美激情一区二区三级高清视频 | 午夜视频久久久| 9.1国产丝袜在线观看| 亚洲国产精品推荐| 亚洲大片精品永久免费| 不卡一区二区在线| 亚洲欧美日韩国产一区| 亚洲精品国产动漫| 新片速递亚洲合集欧美合集| 国产在线观看网站| 亚州福利视频| 欧美三级又粗又硬| 不卡的日韩av| 国产大片aaa| 国产精品国产三级国产aⅴ9色| 91麻豆精品国产91久久久使用方法 | 日日夜夜一区| 天堂va在线| 天堂中文在线资| 7777在线| 国产精品一区牛牛影视| 色呦呦中文字幕| 免费精品一区二区| 久久网中文字幕| 国产精品一区二区入口九绯色| 免费观看精品视频| 真人做人试看60分钟免费| 精品无码久久久久国产| 国产精品99导航| 欧美极品在线播放| 日韩中文字幕在线免费观看| 亚洲黄色av女优在线观看| 欧美日韩五月天| 色综合久久久久网| 亚洲h在线观看| 亚洲欧洲韩国日本视频| 91农村精品一区二区在线| 国产尤物一区二区在线| 日韩精品免费视频人成| 亚洲毛片av| 伊人久久大香线蕉av超碰演员| 欧美色婷婷久久99精品红桃| 极品国产人妖chinesets亚洲人妖| 99久久久国产| 大胆国模一区二区三区| 国产精品黄色片| 正在播放日韩精品| 电影av在线| 久久手机免费观看| 丁香在线视频| 黄色片免费在线观看| 91美女视频在线| 麻豆视频在线观看免费| 成人网视频在线观看| 男同在线观看| 精品一二三区视频| 福利在线午夜| 欧美三级电影一区二区三区| 欧美一区二区三区在线观看免费| 精品福利视频导航大全| 成人在线观看一区| 2021av在线| 国产天堂在线| 国产原厂视频在线观看| 欧美日本高清| 18+激情视频在线| 蜜桃视频网站在线观看| 日本综合在线| 啦啦啦中文在线观看日本| 青青在线视频| 竹内纱里奈兽皇系列在线观看 | 精品一区二区三区欧美| 三级亚洲高清视频| 国产视频亚洲| 蜜桃视频免费观看一区| 日日摸夜夜添夜夜添亚洲女人| 日韩一级在线| 日韩国产精品久久久| 精品夜夜嗨av一区二区三区| 麻豆国产91在线播放| 蜜桃视频在线一区| 精品一区二区三区的国产在线播放 | 丰满爆乳一区二区三区| 日本中文字幕网址| 97人人爽人人| 成人网站免费观看| 日日操免费视频| 日本亚洲色大成网站www久久| 久久久久久久极品| 久久99国产综合精品免费| 国产精品久久久久久免费| 亚洲区小说区图片区| 狠狠色综合久久婷婷| 一个人看的www视频免费在线观看 一个人看的www在线免费观看 | 欧美日韩国产精品一卡| 亚洲ai欧洲av| 99精品一级欧美片免费播放| 中文字幕人妻熟女人妻洋洋| 在线视频日韩一区 | 国产精品美女| 国内精品自线一区二区三区视频| 国产美女在线精品| 91丨porny丨国产| 国产色产综合产在线视频| 天天综合天天综合色| 欧美精品三级日韩久久| 日韩国产高清视频在线| 欧美丰满老妇厨房牲生活| 2019av中文字幕| 国产一区免费在线观看| 三级三级久久三级久久18| www.中文字幕在线| 性色av蜜臀av浪潮av老女人 | 国产精品网站在线| 欧美色视频一区| 在线视频亚洲欧美| 国产又爽又黄的激情精品视频 | 国产精品日韩在线观看| 日韩精品久久一区| 亚洲一级片网站| 超碰手机在线观看| 香蕉人妻av久久久久天天| chinese叫床对白videos| 婷婷在线视频| 视频亚洲一区二区| 亚洲影视在线| 国产精品欧美极品| 欧美成人一区二区三区| 欧美一级片免费在线| 欧美午夜精品理论片a级大开眼界| 免费大片在线观看| 欧美卡一卡二卡三| 男人通一通女人的下水道| 少妇免费视频| www.一区| 亚洲人成高清| 樱桃视频在线观看一区| 精品无码久久久久久国产| 国产精品专区一| 久草资源站在线观看| 日本中文在线视频| 一本之道久久| 大胆av不用播放器在线播放| 欧美人妖在线观看| 高清av一区二区| 欧美疯狂性受xxxxx喷水图片| 欧美激情欧美激情| 欧美一级片免费观看| 好吊操视频这里只有精品| 中文字幕xxxx| 热99在线观看| 性欧美gay| 国产偷自视频区视频一区二区| 中文字幕在线播放不卡一区| 亚洲天堂av女优| 欧美精品与人动性物交免费看| 91成人在线观看喷潮蘑菇| 97超视频在线观看| a4yy在线播放免费观看视频| 免费观看亚洲天堂| 国产综合成人久久大片91| 欧美在线免费视屏| 国产精品视频公开费视频| 日本新janpanese乱熟| 国产寡妇亲子伦一区二区三区四区| 黄色小视频免费看| 一二区成人影院电影网| 日本aⅴ免费视频一区二区三区 | 黄色一级片在线观看| 免费短视频成人日韩| 91亚洲精华国产精华精华液| 亚洲激情 国产| 国产精品一区二区三区在线| 性折磨bdsm欧美激情另类| 99草在线视频| 欧洲亚洲在线| 欧洲乱码伦视频免费| 国产日韩欧美麻豆| 日韩亚洲精品视频| 最新欧美日韩亚洲| 欧美国产日韩综合| 免费下载黄色软件| 制服诱惑亚洲| 国产主播一区二区三区| 欧美成人性战久久| 久热国产精品视频一区二区三区| 亚洲AV无码国产精品| 思99热精品久久只有精品| 爱福利在线视频| 久久久久久婷| 日韩免费看网站| 蜜桃臀一区二区三区| 在线观看亚洲网站| 黑人巨大xxx| 欧美a视频在线| 成人一级黄色片| 中文字幕久热精品视频在线| 亚洲一区尤物| 999这里只有精品| 在线视频福利| 中文字幕免费精品| 欧美亚洲动漫制服丝袜| 国产激情一区二区三区在线观看 | 久久你懂得1024| 久久亚洲精品视频| 干日本少妇首页| 亚洲av无码国产精品久久不卡| 精品国产99久久久久久| 母乳一区在线观看| 亚洲第一男人天堂| 久久最新免费视频| 最近中文字幕在线观看| av在线电影免费观看| 国产精品久久久久久久久久妞妞| 91精品国产乱| 一本二本三本亚洲码| 伊人网站在线观看| 成人国产免费电影| 久久国产福利国产秒拍| 亚洲欧美日韩在线高清直播| 欧美在线一区视频| 色丁香婷婷综合久久| 亚洲成人短视频| 日本一区二区在线不卡| 国产成人亚洲综合青青| 国产精品无码一区二区三区免费| 青青草视频导航| 成人免费在线播放| 欧美人牲a欧美精品| 做爰高潮hd色即是空| 国产精品一区二区免费在线观看| 中文字幕欧美人妻精品| 天堂成人av| 99精品视频中文字幕| 2019av中文字幕| 性欧美13一14内谢| 国产黄色一级电影| 伊人成人在线视频| 亚洲欧洲成视频免费观看| 免费日韩视频在线观看| 四虎成人精品在永久在线观看| 9l视频自拍蝌蚪9l视频成人| 亚洲mv在线观看| 日本欧美色综合网站免费| 久操视频在线免费观看| 538在线精品| 久久久精品黄色| 91精品视频免费| 国产在线视频你懂的| 免费在线观看av片| eeuss鲁片一区二区三区在线观看| 久久久久久久久电影| 亚洲av无码一区二区三区人 | 天堂中文在线观看视频| 95精品视频| 狠狠爱在线视频一区| 一区二区三区的久久的视频| 日本高清视频免费看| 在线观看视频一区二区三区| 在线看日本不卡| 国产av人人夜夜澡人人爽麻豆 | 欧美顶级毛片在线播放| 欧美视频一区在线| r级无码视频在线观看| 欧美一区二区三区播放| 国产一区二区三区站长工具| 精品免费一区二区三区| 五月激情婷婷在线| 国产黄色高清在线| 美女视频一区二区三区| 国产91免费观看| 欧美h在线观看| 性欧美1819sex性高清| 狠狠躁夜夜躁久久躁别揉| 999久久欧美人妻一区二区| 国产麻豆精品高清在线播放| 久久久国产精品| 社区色欧美激情 | 久久久久久久毛片| 日本最黄一级片免费在线| 国产三区在线成人av| 日本一区二区三区在线视频 | 日本青青草视频| 97人人在线视频| 亚洲高清免费观看| www.成年人视频| 激情美女网站| 美女性感视频久久| 成人黄色片在线| 国产美女明星三级做爰| 欧美自拍视频| 亚洲视频视频在线| 欧美色图17p| 亚洲黄色免费看| 欧美自拍丝袜亚洲| 欧美性受xxxxxx黑人xyx性爽| 黄色直播在线| 亚洲欧美综合久久久久久v动漫| 亚洲综合一二区| 日韩精品 欧美| 免费观看视频www| 成人自拍视频在线| 久久久福利视频| 欧美1区二区三区公司| 国产精品日韩精品欧美精品| 国产精品久久久久久一区二区 | 欧美性受xxxx黑人xyx| 在线观看国产福利| 九色蝌蚪在线| 樱桃国产成人精品视频| 国产欧美在线一区| 国产毛片视频| 久久老女人爱爱| 中文字幕一区二区中文字幕| 九九爱在线视频观看免费视频| 国内不卡的二区三区中文字幕 | 亚洲一级在线播放| 久久亚洲道色| 久久亚洲欧美日韩精品专区| 精品国产免费观看| 国产精品丝袜在线播放| 日韩一区二区精品视频| 黄色在线观看国产| 尤物tv在线精品| 欧美激情综合亚洲一二区| 亚洲中文一区二区三区| 9999国产精品| 国产精品久久久久久久久免费看| www.香蕉视频| 亚洲人成毛片在线播放女女| 成人情趣片在线观看免费| 神马午夜在线观看| 久久国产66| 精品无人区一区二区三区| 嫩草影院在线观看未满十八| 成人激情动漫在线观看| 丁香色欲久久久久久综合网| 日本福利片免费看| 亚洲乱码国产乱码精品精可以看| 黄大色黄女片18第一次| 亚洲欧美成人影院| 91精品国产色综合久久ai换脸| 男人的午夜天堂| 成人自拍在线| 97色在线视频观看| 亚洲视频色图| 国产在线国偷精品产拍免费yy| 亚洲区一区二区三区| 97在线观看免费高清视频| 亚洲国产精品一区二区www在线 | 久久久久久久久久美女| av网站在线观看不卡| www红色一片_亚洲成a人片在线观看_| 7777精品久久久大香线蕉| 日韩一级片大全| 久久91麻豆精品一区| 国产精品视频公开费视频| 国产寡妇树林野战在线播放| 91麻豆免费视频| 色一情一区二区三区| 在线女人免费视频| 日韩中文理论片| 国产1区在线观看| 国产米奇在线777精品观看| 黄色成人在线看| 91网在线看| 亚洲欧美中文日韩v在线观看| 日本妇乱大交xxxxx| 亚洲欧美日韩综合国产aⅴ| 日韩性感在线| 国产在线日本| 亚洲国产精品热久久| 亚洲天堂国产精品| 美女免费视频一区二区| 丁香六月激情网| 婷婷丁香在线| 日韩亚洲综合在线| 中文字幕你懂得| 久久久99久久| 一区二区三区四区影院| 一区中文字幕电影| 国产在线一区二区三区| www.黄com| 疯狂蹂躏欧美一区二区精品| 亚洲熟女www一区二区三区| 午夜国产欧美理论在线播放 | 日韩美女在线看| 丝瓜app色版网站观看| 一区二区三区日本| 911国产在线| 欧美福利视频| 一区二区三区四区视频在线观看| 第一页在线观看|