久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

數據庫SQL語句十題

時間:2019-05-15 15:29:14下載本文作者:會員上傳
簡介:寫寫幫文庫小編為你整理了多篇相關的《數據庫SQL語句十題》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《數據庫SQL語句十題》。

第一篇:數據庫SQL語句十題

作業十題

1.查詢所有學生的基本信息,并按學號降序排列

SELECT * FROM STUDENT

ORDER BY sno DESC;

2.查詢系別代碼為“02”的女同學信息

SELECT * FROM STUDENT

WHERE ssex=’女’ and sdept=‘02’;

3.查詢學生的總人數

SELECT COUNT(*)AS 學生總人數

FROM STUDENT;

4.所有選修課學生的姓名,課程名及成績

SELECT sname,cname,grade

FROM STUDENT,COURSE,SC

WHERE STUDENT.sno=SC.sno and COURSE.cno=SC.cno;

5.不及格學生姓名(合并重復項)

SELECT distinct sname

FROM SC,STUDENT

WHERE grade<=60 and STUDENT.sno=SC.sno;

6.查詢學號為“011110”的學生的哪些課程的成績比他數據庫的成績要高 SELECT cno

FROM COURSE

WHERE sno=’011110’ and grade>(SELECT grade FROM COURSE,SC

WHERE cname=’數據庫’ and sno=‘011110’ and

COURSE.cno=SC.cno);

7.查詢選修課在3門以上(包括3門)的學生學號及選課門數 SELECT sno,COUNT(*)AS 選修門數

FROM SC

GROUP BY sno HAVING COUNT(*)>=3;

8.查詢學號為“011110”的學生的平均成績,并以平均成績命名 SELECT AVG(grade)AS average grade

FROM SC

WHERE sno=’011110’;

9.查詢計算機系或英語系的所有學生的個人信息

SELECT*FROM STUDENT

WHERE sdeptIN(SELECT sdept FROM DEPT

WHERE sdname=’計算機系’OR sdname=’英語系’);

10.查詢與“羅宇波”同一個系的學生情況

SELECT * FROM STUDENT

WHERE sdept=(SELECT sdept FROM STUDENT

WHERE sname=’羅宇波’);

第二篇:SQL數據庫編程學習應用語句

SQL數據庫編程學習應用語句大全

1as 的用處

as可以對表和列取別名

在開發過程中經常遇到開始給某一個的字段去field1的名稱,但后來有感覺field1字段指定不確切,于是又把此字段改成了field2,由于開始認為field1是常量,于是到處使用字符串field1,而且程序中又含有大量對field1的處理,此時就可以使用as

例如原來的 select field1 from tableA,改為selectfield2 asfield1 from tableA 代碼基本就可以不動了。

2自增長的字段的插入

開發中經常遇到某個字段類型為IDENTITY,也就是自增長類型,但由于特殊需要,又要插入數據

需要臨時去掉,可以使用如下語句set IDENTITY_INSERTtablename on,在處理完成后在使用如下語句恢復 set IDENTITY_INSERTtablenameoff

3分組取每組的前N個數據

開發中還會遇到需要對某一組數據先分組,然后取每組的前n條記錄的情況

不妨試試如下代碼

[sql] view plaincopy

/*

按CurrentNodeLevel列分組,每組按NodeID排序,取出每個組中的前3個元素*/

declare @temp table(NodeIDint, CurrentNodeLevelint ,rowNumberint)--定義臨時表insert into @temp

selectNodeID,CurrentNodeLevel,ROW_NUMBER()

OVER(partitionby CurrentNodeLevel

order by NodeID)as rowNumber

from SchoolTerminalStruct---給臨時表中插入數據

select * from @temp where rowNumber<=3--從臨時表中取數據

4生成隨機數

主意此方法只能寫成存儲過程,不能寫成函數

[sql] view plaincopy

-----返回Max,Min之間的隨機數不能寫成函數

createproc [dbo].[getRAND]

(@Max int,--最大值

@Min int--,--最小值)

AS

BEGIN

DECLARE @result int

SELECT @result=RAND()*(@Max-@Min)+@Min

select@result

END

5把滿足一定條件的數據用逗號分隔

這可能也是一個很常用的語句了,經常出現在一對多的關系中對外展示,要求把子表中的數據取出來用逗號或者其他符號分隔開

[sql] view plaincopy

/*

把滿足 t2.NodeID=t1.NodeID的tableA 的字段NodeName 以逗號分隔開合并為一個字段輸出

*/

select *,stuff((select ',' + t1.NodeName from tableA t1,tableB t2

wheret2.NodeID=t1.NodeID

for xml path('')), 1 , 1 , '')as text

fromtableA

6在數據庫中處理異常

通過個參數附加output標志來輸出參數,通過TRY,CATCH捕捉異常

[sql] view plaincopy

CREATE PROCEDURE [dbo].[sp_UpdateFunctionTree]

@nodenameint,@Result int output---2,操作失敗;0操作成功

AS

BEGIN

begin

BEGIN TRY

UPDATE FunctionTree SET NodeName=@nodename

set @Result=0--操作成功

END TRY

BEGIN CATCH

set @Result=-2--操作失敗

END CATCH

end

END

7查詢中的條件判斷

經常遇到在某些條件下應該查詢這個字段,在另外一些條件下需要其他字段的情況,可以通過unoin來完成,但也可以通過CASE WHEN 完成[sql] view plaincopy

/*

在State=0 時返回field1 ,在State=1時返回 field2 ,其他時返回field3

*/

SELECT(CASE WHENState=0 THEN field1 WHENState=1 THEN field2

ELSE field3 END)as State

FROM tablename

8單引號的處理

在包含單引號時應該使用兩個單引號轉義

[sql] view plaincopy

dbo.sp_executesql @statement = N' select indexID,Sex=(case when Sex=0then ''男'' else ''女'' end)

fromtablename '

9使用游標

[sql] view plaincopy

declare @temp table(TaskIDint ,NodeIdint)--聲明臨時表

insert into @temp select A.TaskID ,A.NodeIdfrom tableAA,tableB B

whereA.TaskID=B.TaskID--//--給聲明的臨時表中插入記錄

DECLARE tnames_cursor CURSORLOCAL FORWARD_ONLY READ_ONLY--聲明游標

FOR select TaskID,NodeId from @temp;--游標需要用到的列

open tnames_cursor--打開游標

DECLARE @TaskIDint,@NodeIdint;--聲明變量

FETCH NEXT FROM tnames_cursor INTO @TaskID,@NodeId--移動游標給變量賦值,應該與游標需要用到的列一一對應,順序類型應該一致

WHILE(@@FETCH_STATUS = 0)--循環

BEGIN

BEGIN

exec TaskType @TaskID,@NodeId--調用存儲過程

END

FETCH NEXT FROM tnames_cursor INTO @TaskID,@NodeId ,@TaskRunCYCType--移動游標給變量賦值 應該與游標需要用到的列一一對應,順序類型應該一致

END

CLOSE tnames_cursor--關閉游標

DEALLOCATE tnames_cursor--釋放游標

10合并更新和插入

在開發中大部分情況下,插入和更新傳遞的參數基本上是一樣,那為什么不合并呢

[sql] view plaincopy

createproc [dbo].[Save_TableName]

(@field1 varchar(50),@field2varchar(200),@ID int,@insertOrUpdate--小于0插入 大于0更新)

as

begin

if(@insertOrUpdate<0)

begin

INSERT INTOTableName(field1,field2,ID)

values(@field1,@field2,@ID);

end

else

begin

UPDATE TableNameSET field1= @field1, field2 = @field2

where ID =@ID;

end

end

11定義函數

在沒有滿足要求的情況時,可以定義函數,但是使用自己定義的函數時需要加上架構名稱

[sql] view plaincopy

create FUNCTION [dbo].[CheckTime]

(@startTimedatetime,@endTimedatetime--,)

RETURNSint

AS

BEGIN

DECLARE @result int

SET@result=DATEDIFF(hour, @startTime, @endTime)--

if(@result=0)--小時相同 比較分鐘

begin

SET@result=DATEDIFF(minute, @startTime, @endTime)

if(@result=0)--分鐘相同比較秒

begin

SET@result=DATEDIFF(second, @startTime, @endTime)

end

end

RETURN @result

END

調用此函數

[sql] view plaincopy

dbo.CheckTime(@startTime1, @startTime2)--需要加上架構名稱

12遞歸讀取數據

在實際的應用中經常遇到樹結構的表,但讀取會比較麻煩,這里提夠一個函數

[sql] view plaincopy

/*

函數 返回表,返回給定節點的所有子孫節點,而不僅僅是子節點

*/

Create Function [dbo].[GetChildren](@NodeIDInt)

Returns @Tree Table(NodeIDInt, NodeNameVarchar(50), ParentIDInt)

As

Begin

Insert @Tree Select NodeID, NodeName, ParentIDFromTreetable Where ParentID = @NodeID

While @@Rowcount> 0

Insert @Tree Select A.NodeID, A.NodeName, A.ParentID

From Treetable A

Inner Join @Tree B

On A.ParentID = B.NodeIDAndA.NodeID Not In(Select NodeID From @Tree)Return

End

13通過默認值實現存儲過程重載

存儲過程可以使用默認值,估計都知道,但以此就可以實現類似函數重載的效果

例如,如下的存儲過程由于使用了默認值,就可以不傳遞參數,傳遞一個參數,兩個,三個,[sql] view plaincopy

CREATE PROCEDURE dbo.my_proc

@firstint = NULL,--NULL default value

@secondint = 2,--Default value of 2

@thirdint = 3--Default value of 3

AS SELECT @first, @second, @third;

14在數據庫中拼字符串,也可以用參數

在實際的開發中,某些情況下在數據庫中拼字符串不可避免,但又擔心有特殊字符,導致拼出來的SQL有問題,其實數據庫中拼字符串也可以使用參數,這就要用到dbo.sp_executesql,這樣就可以避免SQL注入和特殊字符導致的錯誤

[sql] view plaincopy

DECLARE @IntVariable INT;--定義變量

DECLARE @SQLString NVARCHAR(500);--存儲拼出來的SQL

DECLARE @ParmDefinition NVARCHAR(500);---存儲拼出來的SQL中的參數

/* Build the SQL string one time.*/

SET @SQLString =

N'SELECT * FROM AdventureWorks.Sales.Store WHERE SalesPersonID = @SalesID';/* Specify the parameter format one time.*/

SET @ParmDefinition = N'@SalesIDint';--賦值

/* Execute the string with the first parameter value.*/

SET @IntVariable = 275;--賦值

EXECUTE dbo.sp_executesql@SQLString, @ParmDefinition,@SalesID = @IntVariable;

/* Execute the same string with the second parameter value.*/

SET @IntVariable = 276;

EXECUTE dbo.sp_executesql@SQLString, @ParmDefinition,@SalesID = @IntVariable;

16觸發器需要注意的問題

在使用觸發器時有一個問題,或許很少有人注意到,一條更新語句一次更新了十條記錄,會觸發幾次觸發器?只有一次!很奇怪,但卻是事實,所以這需要注意,一不小心就會把好

多數據漏了

第三篇:sql語句

簡單基本的sql語句 幾個簡單的基本的sql語句

選擇:select * from table1 where范圍

插入:insert into table1(field1,field2)values(value1,value2)

刪除:delete from table1 where范圍

更新:update table1 set field1=value1 where范圍

查找:select * from table1 where field1 like ’%value1%’

(1)數據記錄篩選:

sql=“select * from 數據表 where 字段名=字段值 order by 字段名 [desc]”

sql=“select * from 數據表 where 字段名 like '%字段值%' order by 字段名 [desc]”sql=“select top 10 * from 數據表 where 字段名=字段值 order by 字段名 [desc]”sql=“select top 10 * from 數據表 order by 字段名 [desc]”

sql=“select * from 數據表 where 字段名 in('值1','值2','值3')”

sql=“select * from 數據表 where 字段名 between 值1 and 值2”

(2)更新數據記錄:

sql=“update 數據表 set 字段名=字段值 where 條件表達式”

sql=“update 數據表 set 字段1=值1,字段2=值2 …… 字段n=值n where 條件表達式”

(3)添加數據記錄:

sql=“insert into 數據表(字段1,字段2,字段3 …)values(值1,值2,值3 …)”

sql=“insert into 目標數據表 select * from 源數據表”(把源數據表的記錄添加到目標數據表)

(4)數據記錄統計函數:

AVG(字段名)得出一個表格欄平均值

COUNT(*;字段名)對數據行數的統計或對某一欄有值的數據行數統計MAX(字段名)取得一個表格欄最大的值

MIN(字段名)取得一個表格欄最小的值

SUM(字段名)把數據欄的值相加

引用以上函數的方法:

sql=“select sum(字段名)as 別名 from 數據表 where 條件表達式”

set rs=conn.excute(sql)

用 rs(“別名”)獲取統計的值,其它函數運用同上。

查詢去除重復值:select distinct * from table1between的用法

between限制查詢數據范圍時包括了邊界值,not between不包括

select * from table1 where time between time1 and time2

select a,b,c, from table1 where a not between 數值1 and 數值2

in 的使用方法

select * from table1 where a [not] in(‘值1’,’值2’,’值4’,’值6’)

第四篇:SQL語句

SQL語句,用友的SQL2000,通過查詢管理器寫的語句

1、查詢

2、修改

3、刪除

4、插入

表名:users 包含字段:id,sname,sage

查詢 select * from users查詢users表中所有數據

select id,sname,sage from users查詢users表中id,sname,sage字段所有數據

可以限定查詢條件比如:

select sname from users where sage>20查詢年齡大于20歲的所有人的名字

修改 update users set sname='李四',sage=22將users表中數據都改為姓名李四,年齡22

update users set sname='李四',sage=22 where id=1限定id為1的人的信息修改為

姓名李四,年齡22

可以加where條件。

刪除 delete from users where id=2刪除users表中id為2的一行數據delete from users 代表刪除users中所有數據

插入 insert into users(id,sname,sage)values(5,'劉三',21)插入一條數據

SQL四條最基本的數據操作語句:Insert,Select,Update和Delete。

例如:SELECT columns FROM tables;其中columns為列的名稱,tables為表格名稱

1、查詢:select 字段名 from 表名 where 條件

查找在表(如A)中符合條件的字段

2、修改:update 表名 set 字段名=‘所要修改的內容’

修改在表(如A)中的字段的值為:所要修改的內容

3、刪除: delete from 表名 where 條件

刪除符合條件的表(如A)中的信息

4、插入: insert into 表名(字段名)(‘插入內容’)

在表(如A)中插入字段為:插入內容 的一條信息

第五篇:SQL數據庫心得

黃淮學院 2015---2016學年第 一 學期 《C#數據庫應用程序開發技術與案例教程》課程

題目:

學習報告

系:數學科學系 專

業:數學與應用數學 年

級:1301B 姓

名:曹占營 學

號:1331110101 任課教師:楊鋒英

2015年 12 月 30日

C#數據庫學習報告

在日常生活中,我們和朋友、親戚聯系,會廣泛用到通訊錄,因此這門課程以通訊錄開發為案例,教我們學習軟件開發。

軟件開發是一項非常注重實踐工作,不可能只憑看書、看視頻就學會軟件開發,必須扎扎實實、一行一行的編寫代碼,不斷積累項目經驗,才能真正掌握編程技術,所以我們要親自上級編寫程序,才能真正掌握軟件開發技術。

本書分為基礎篇、進階篇、高級篇,由淺入深地介紹了基于C#的數據庫編程技術,所用的開發工具為Visual Studio 2008、SQL Server 2005以及Access 2007。

學習數據庫的內容是從數據庫、數據表的創建和修改開始的,表是建立關系數據庫的基本結構,用來存儲數據具有已定義的屬性,在表的操作過程中,有查看表信息、查看表屬性、修改表中的數據、刪除表中的數據及修改表和刪除表的操作。從課程中讓我更明白一些知識,查詢可以通過SQL語言進行完成,這樣加深了查詢語句的基本結構,讓我們能更好的掌握其中語句,方便于我們后面的學習和應用。表是數據最重要的一個數據對象,表的創建好壞直接關系到數數據庫的成敗,表的內容是越具體越好,但是也不能太繁瑣,以后在實際應用中多使用表,對表的規劃和理解就會越深刻。在編程方面是需要我們對于編程有邏輯思維能力及一定的編程技巧。在數據庫中插入表、表中的信息等都需要注意,不然很容易出錯。

在基礎篇中,詳細講解了通訊錄系統的設計、開發和安裝部署這樣一個完整過程,對各個任務進行詳細講解。基礎篇學習分為9個任務,分別為系統分析與設計、用戶登錄、主窗體設計、聯系人分組管理、聯系人管理、用戶密碼修改、數據庫備份與恢復、設計“關于”窗體、系統安裝與部署。學完基礎篇,即可開發出一個功能較為完備的通訊錄系統。在聯系人管理任務學習中,由于在Contact表中保存的是分組編號,而窗體上要顯示的是分組名稱,所以在查詢語句中需要級聯查詢,即SQL語句為”select Contact.Id, Name, Phone, Email, QQ, GroupName from Contact, ContactGroup where Contact.GroupId = ContactGroup.Id”。為了實現代碼復用,可以提供查詢功能,根據用戶選擇的擦尋天劍,拼接產生SQL語句。同時為了支持模糊查詢,還在SQL語句中用了like語句。通過SqlDataAdapter的Fill方法填充數據集,獲取數據。數據集中有了數據以后,我們只需設置DataGridView控件的DataSource屬性,就可以顯示數據了。

在進階篇中,介紹了企業項目開發中廣發用到的參數化SQL語句、存儲過程使用及定義數據庫操作類,分為3個任務學習,分別為使用參數化SQL語句、使用存儲過程、使用自定義數據庫操作類,進一步提高我們的數據庫編程能力。在使用存儲過程任務學習中,了解到存儲過程是在大型數據庫系統中,一組為了完成特定功能的SQL語句集,經編譯后存儲在數據庫中,用戶通過指定存儲過程的名字并給出參數(如果該存儲過程帶有參數)來執行它。在性能方面,存儲過程有如下的優點。(1)與編譯,存儲過程預先編譯好放在數據庫內,減少編譯語句所花的時間。(2)緩存,編譯好的存儲過程會進入緩存,所以對于經常執行的存儲過程,除了第一次執行外,其他次執行的書都會有明顯提高。(3)減少網絡傳輸,特別對于處理一些數據的存儲過程,不必像直接用SQL語句實現那樣多次傳送數據到客戶端。通過前面的學習,細細體會對數據庫的操作,可以發現,這么多操作其實可以分為4種。(1)對數據庫進行非連接式查詢操作,返回多條記錄。這種操作可以通過SqlDataAdapter對象的Fill方法來完成,即把查詢得到的結果填充到DataTable(或DataSet)對象中。(2)對數據庫進行連接式查詢操作,返回多條查詢記錄。這種操作可以通過SqlCommand對象的ExecuteReader方法來完成,返回SqlDataReader對象。(3)從數據庫中檢索單值。這種操作可以通過SqlCommand對象的ExecuteNonQuery方法來完成。ExecuteScalar方法返回的是Object類型,需要根據實際情況進行類型轉換。(4)對數據庫執行增、刪、改操作。這種操作可以通過SqlCommand對象的ExecuteNonQuery方法來完成,返回增、刪、改操作后數據庫中受影響的行數。

在高級篇中,分為4個任務學習,分別為開發基于三層構架的通訊錄程序、開發基于Access的通訊錄程序、實現基于抽象工廠模式的三層架構、使用MD5加密用戶密碼。首先詳細講解了基于三層構架的通訊錄程序開發過程以及如何開發一個基于Access的通訊錄系統。最后,介紹了如何采用MD5加密技術對用戶密碼加密。MD5加密技術也是實際項目開發中廣泛用到的,通過MD5加密用戶密碼,可以提高程序的安全性。“三層架構”一詞中的“三層”是指:“表示層”、“業務邏輯層”、“數據訪問層”。表示層:位于最外層,離用戶最近。用于顯示和接收用戶輸入的數據,為用戶提供一種交互式操作界面。表示層的常見形式為WinFrom和WebForm。業務邏輯層:負責處理用戶輸入的信息,或者是將這些信息發送給數據訪問層進行保存,或者是調用數據訪問層中的函數再次讀出這些數據。業務邏輯層也可以包括一些對“商業邏輯”描述代碼在里面。數據訪問層:僅實現對數據的保存和讀取操作。可以訪問數據庫系統、二進制文件、文本文檔或是XML文檔。

在這一學期有限的幾次實驗課后,我雖然沒有學會很多,但也學會了一些簡單的操作,我學會了一些簡單的數據運算,會建立一些簡單的表。有時候在做實驗時,對于實驗中的一些東西我不怎么了解,但我還會去做,因為我想只有多練習才能熟練,也才能理解掌握知識。我不知道這一門課對其他同學來說怎么樣,但對我來說卻有些難,但我會努力。因為我認為它對我以后考計算機二級有很大的幫助。

很快這一學期馬上就要結束了,數據庫這一門課也很快就要結束了,但這一學期的學習讓我知道了很多,也告訴了我在以后的人生中如何去做事,如何去做人。尤其是老師的耐心,老師的敬業精神感動了我,再做任何事時都應該認真負責,任何一個人都應該被尊重。

下載數據庫SQL語句十題word格式文檔
下載數據庫SQL語句十題.doc
將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
點此處下載文檔

文檔為doc格式


聲明:本文內容由互聯網用戶自發貢獻自行上傳,本網站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發現有涉嫌版權的內容,歡迎發送郵件至:645879355@qq.com 進行舉報,并提供相關證據,工作人員會在5個工作日內聯系你,一經查實,本站將立刻刪除涉嫌侵權內容。

相關范文推薦

    VB數據庫SQL語句學習(精選多篇)

    1.Select * from student查詢所有原始記錄 2. Select StudentID, StudentName from student 只查詢學號和姓名 3. Select StudentID as 學號, StudentName as 姓名, Sex as......

    SQL語句判斷數據庫、表、字段是否存在

    SQL語句判斷數據庫、表、字段是否存在 --判斷[TestDB]是否存在 if exists(select 1 from master..sysdatabases where name='TestDB') print 'TestDB存在' else print 'Test......

    SQL簡單語句小結 數據庫菜鳥不可不看

    數據庫菜鳥不可不看簡單SQL語句小結為了大家更容易理解我舉出的SQL語句,本文假定已經建立了一個學生成績管理數據庫,全文均以學生成績的管理為例來描述。 1.在查詢結果中顯示......

    實驗四使用SQL語句修改SQL Server 數據庫

    實驗四使用SQL語句修改SQL Server數據庫 1、實驗目的: (1) 了解SQL Server數據庫的邏輯結構和物理結構; (2) 掌握使用SQL語句修改數據庫的方法; 2、實驗準備: (1)要明確能夠修改數據庫......

    文管二級Access數據庫SQL語句詳解

    第一講 上面是Access數據庫中所涉及的兩個表 下面我們介紹Access數據庫中用于查詢數據的語句: 1、 SELECT 語句 SELECT語句是數據庫中使用頻率最高的語句,就是我們通常說的查......

    數據庫sql語言總結

    插入句型: insertinto [各屬性名]values(,……)刪除元組或者二維表: delete from[ where ]刪除屬性: altertabledropcolumn增加某表的屬性: altertableadd 類型 修改句型: update......

    數據庫實驗報告 SQL語言

    數據庫原理及實驗報告 實驗6 視圖 實驗目的:1)掌握交互式創建、刪除視圖的方法 2)掌握使用SQL創建、刪除視圖的方法 3)掌握交互式更新視圖的方法 4)掌握使用SQL更新視圖的方法 實......

    SQL數據庫設計教學大綱

    SQL數據庫設計教學大綱 一、 課程說明: Microsoft SQL Server是目前最流行的大中型關系數據庫管理系統,該課程以SQL語言為工具,很好的實現了對巨量數據進行數字化管理,使學生全......

主站蜘蛛池模板: 色偷偷色噜噜狠狠网站30根| 动漫精品无码视频一区二区三区| 亚洲女人色综合小说| 成熟丰满熟妇高潮xxxxx| 伊人久久精品一区二区三区| 色偷偷激情日本亚洲一区二区| 一本色道久久88精品综合| 久久国产成人精品国产成人亚洲| 精品无码国产自产在线观看水浒传| 国产欧美精品一区二区三区-老狼| 亚洲成av人片在www色猫咪| 亚洲国产老鸭窝一区二区三区| 亚洲精品无码永久在线观看你懂的| 欧美熟妇xxxxx欧美老妇不卡| 日本高清视频网站www| 免费看成人欧美片爱潮app| 国产内射合集颜射| 精久国产av一区二区三区孕妇| 51看片免费视频在观看| 免费国产a国产片高清网站| 国产乱人伦偷精品视频免下载| 国产av丝袜一区二区三区| 国产中年熟女高潮大集合| 亚洲人成小说网站色在线观看| 亚洲国产长腿丝袜av天堂| 精品国产v无码大片在线看| 色婷婷五月综合激情中文字幕| 欧洲女人性开放免费网站| 熟妇人妻一区二区三区四区| 色哟哟国产精品免费观看| 精品少妇一区二区三区视频| 99e热久久免费精品首页| 亚洲 小说 欧美 另类 社区| 亚洲一区二区三区四区| 先锋影音最新色资源站| 精品国产一区二区三区免费| 亚洲男人av天堂男人社区| av成人午夜无码一区二区| 国产99视频精品免费观看6| 色悠久久久久综合网伊人| 精品爆乳一区二区三区无码av|