欧美一级特黄aaaaaaa在线观看-欧美一级特黄aaaaaa在线看片-欧美一级特黄aa大片-欧美一级特黄刺激大片视频-深夜久久-深夜激情网站

熱門關鍵字:  聽力密碼  聽力密碼  新概念美語  單詞密碼  巧用聽寫練聽力

跟韓老師學SQL Server數據庫設計與開發

中國水利水電出版社
    【作 者】韓立剛 【I S B N 】978-7-5170-5182-4 【責任編輯】周春元 張玉玲 【適用讀者群】本專通用 【出版時間】2017-03-09 【開 本】16開 【裝幀信息】平裝(光膜) 【版 次】第1版第1次印刷 【頁 數】324 【千字數】398 【印 張】18 【定 價】58 【叢 書】 【備注信息】
圖書詳情

    在軟件設計和開發過程中,需求分析確定后,在開發軟件前就需要先設計數據庫,然后再編寫代碼。本書講解的內容是軟件開發人員必須要掌握的技術,先講解如何根據項目的需求按關系型數據庫設計規范設計數據庫中的表,然后使用自己設計的數據庫來學習SQL語句。

    本書完整地講述了SQL語句中使用的變量、數據類型、注釋行、運算符、常用函數,以及流程控制語句。從單表查詢講起,講解使用WHERE篩選行將查詢的結果分組、排序,然后講解多表查詢和數據匯總,講解多表交叉聯結、內聯結、外聯結、自聯結,使用UNION合并查詢結果集,使用聚合函數匯總查詢結果,接著講解了子查詢、開窗函數和行列轉換技術,實現數據完整性,創建和使用索引優化性能,在數據庫中創建和使用視圖簡化查詢,使用存儲過程操作數據庫,創建用戶自定義函數,在SQL語句中使用自定義函數,使用觸發器實現復雜的業務邏輯,使用事務實現數據的完整性和一致性。

    范式、多表聯接、聯接查詢、存儲過程、索引、觸發、事務、鎖……這些核心概念你真的懂嗎?

    用最好懂的方式水煮復雜概念,所有似懂非懂一劍封喉!

    超10年企業實戰經驗與多年大學授課經驗完善結合!

    課本知識與企業需求無縫銜接,項目教學+案例教學+校企合作的完善實踐!

    我最初學習數據庫是2001年,感覺學習SQL語句很難,而且學完后時間稍微一長就忘了。現在回想起來,當時學習的難點非常關鍵的一點就是使用微軟SQL Server 2000的示例數據庫來學習,作為初學者,根本不知道Northwind數據庫是用來做什么的,更不知道其中各個表之間的關系,也不知道為什么要把數據放到多張表,查詢時再連接成一張表。使用陌生的數據庫學習新知識自然帶來不少困難,不理解數據庫為什么要設計出多張表來存放數據以及各表之間的關系也就弄不清如何寫多表聯合查詢的條件。

    獨立為幾家企業開發幾款軟件后熟悉了整個軟件開發流程,從客戶的需求分析到數據庫設計,再到軟件開發、測試部署和維護。在此期間使用自己設計的數據庫編寫SQL語句真是得心應手,也因此找到了學習SQL的正確方法,即先學習數據庫設計,再學習對這些表增刪改查的SQL語句。

    本書使用微軟SQL Server 2008搭建學習環境,以軟件開發過程中的需求分析文檔為基礎設計學習數據庫,然后使用自己設計的數據庫來學習SQL語句。

    本書提供了生成學習環境的數據庫表和插入記錄的SQL語句,為你的學習準備好了數據。

    本書主要內容

     數據的結構化集合稱為數據庫。數據庫模型可分為層次模型、網狀模型和關系模型。關系模型是目前最普遍使用的一種數據模型,它采用人們所熟知的二維表格來描述現實世界中的實體以及各實體之間的各種聯系,概念清晰、使用方便。在其被提出之后,就得到數據庫開發商的積極支持,使其迅速成為繼層次模型和網狀模型之后一種嶄新的數據庫模型,如今在數據庫技術領域占據了統治地位,市場上流行的數據庫產品幾乎都支持關系模型。本章通過一張表和一個簡單的教學管理系統案例來講解關系模型,以及如何利用關系模型來設計數據庫。

     SQL的全稱是結構化查詢語言,是Structured Query Language的縮寫。隨著關系數據庫理論的提出,美國國家標準協會(ANSI)首次定義了SQL標準,隨后國際標準化組織(ISO)將SQL標準采納為國際標準。SQL語言在不斷發展的過程中經歷了多次修改和完善。各大數據庫廠商在遵循ANSI標準的同時,根據自己的產品特點對SQL進行再開發和擴展,于是就有了SQL Server的Transact-SQL(簡稱T-SQL)、Oracle的PL/SQL等語言。本書以T-SQL為基礎進行SQL語言介紹,大部分SQL語言內容同樣適用于其他數據庫產品。本章講述最基本的SQL內容,這些知識雖然基礎簡單,但是對學好本書的后續內容起著至關重要的作用。

     從本章開始將踏上對數據的操作之旅,這正是SQL的目的,也是學習SQL語句樂趣的開始。數據的查詢,是SQL中使用最頻繁的操作,也是最重要的知識之一。在SQL Server中,大量的組件和技術都是為了查詢而存在,這正說明了查詢的重要性。在本章的數據查詢中會大量使用上一章中介紹的T-SQL語法、運算符等基礎知識,這些基礎知識還會貫穿在后續的章節中。

     第3章中講述了基礎查詢,其涉及的都是在單個表上的查詢。但是單表查詢常常不能滿足查詢需求。在關系數據庫設計時,出于規范化,需要將數據分散在多個表中。T-SQL因關系型數據庫而生,因此在使用T-SQL進行查詢時會經常涉及兩表或多表中的數據,這就需要使用表的聯接來實現多個表數據之間的聯接查詢。聯接查詢是關系型數據庫的一個主要特點,同時也是區別于其他類型數據庫管理系統的一個主要標志。本章將詳細講述多表聯接的類型,UNION合并結果集,增強型分組函數CUBE、ROLLUP和GROUPING SETS的使用方法。

     如果說多表聯接使查詢語句變得復雜,那么子查詢則使得查詢變得更靈活、更有邏輯。所謂子查詢,就是一個嵌套在SELECT、INSERT、UPDATE、DELETE語句或其他子查詢中的查詢。在很多情況下,查詢并不是一蹴而就的,往往需要其他載體充當中間角色,而子查詢正是充當著中間集這樣一種角色。子查詢是內部查詢,返回的結果集供外部查詢使用。子查詢根據返回結果集中值的數量可以分為標量子查詢、多值子查詢和表子查詢,也可以根據對外部查詢的依賴性分為獨立子查詢和相關子查詢。本章會按照這兩種分類方式穿插介紹子查詢。

     在設計表的時候,很多情況下都以方便數據存儲為目的,導致有時候直接閱讀這些表數據比較困難。前面幾章介紹的SQL查詢,數據的檢索都是針對一張表或多張表進行的,而窗口計算則是在表內按用戶自定義規則進行每組數據的檢索和計算。在使用GROUP BY子句時,總是需要將篩選的所有數據進行分組操作,它的分組作用域是整張表,分組以后查詢為每個組只返回一行,而使用基于窗口的操作則是對表中的一個窗口進行操作。行列轉換是通過語句將行數據轉換成列或列數據轉換成行顯示出來。

     在前面各章中詳細地講述了有關數據查詢SELECT的知識,也在必要的地方略有涉及數據修改語句。在本章中,將會詳細介紹數據操作語言(DML)中的INSERT、UPDATE和DELETE語句以及使用MERGE進行數據合并。

     數據完整性是用來保證數據庫中數據一致性的一種物理機制,主要用于防止非法、不合理或贅余數據存在于數據庫中。SQL Server提供了諸如數據類型、主鍵、外鍵、默認值約束、檢查約束和規則等措施來實現這種機制。數據類型的實現機制不言自明,規則已經逐漸被淘汰,并且可以使用約束來替代它,因此本章主要介紹數據完整性的基礎知識和實現數據完整性的各種約束。

     無論是數據庫的開發人員、管理人員還是用戶,他們都希望能夠快速地從數據庫中查詢到期望的數據。如果表中數據量小,可能都能立即得到結果,但隨著數據量的不斷增大,查詢所花費的時間也在急劇增加。使用合理的索引可以對查詢進行優化,但是不合理的索引也可能會產生很大的副作用。

     在本章中將詳細介紹另一種表表達式:視圖(VIEW)。表表達式的基本目的是一樣的,都是通過查詢語句將滿足條件的數據篩選出來作為中間結果集以作他用。相比前面介紹的兩種表表達式,視圖和表一樣是數據庫的一種對象,它實實在在存儲在數據庫中,只要不顯式刪除它們就可以重復使用。

     存儲過程(Stored Procedure)是“過程”的,和其他編程語言的過程類似。存儲過程是一段可執行的服務端程序,一個存儲過程可以集合多條SQL語句,當它和服務器進行數據交互時,不管存儲過程中包含有多少條SQL語句,服務器都會將它們作為一個事務進行處理并緩存它的執行計劃。存儲過程封裝了語句,在編程角度考慮,它提高了復用性。和視圖類似,它隱藏了數據庫的復雜性,通過和視圖類似的授權方式它還提高了數據庫的安全性。同時,作為一種數據庫對象,存儲過程可以在需要時直接調用。本章主要介紹存儲過程的創建、修改和注意事項,以及存儲過程的特性。

     在第2章中介紹了一些內置的系統函數,如聚合函數AVG()和SUM()、字符串函數SUBSTRING()和LTRIM()等,這些函數的作用就是實現特定的功能,簡化并封裝頻繁執行的邏輯操作。除了這些內置函數,SQL Server還允許創建用戶自定義函數(User-Defined Functions,UDF)來擴展SQL語句的功能。

     觸發器實現的是一種通過某些操作的觸發來完成另一個操作過程的功能。例如,當刪除一張表中的某些記錄時同時希望刪除另一張表中的某些相關記錄,當然這可以通過外鍵引用來實現,但是對有些表沒有必要定義外鍵,這時候就可以通過觸發器來觸發實現。觸發器是被動觸發執行的,它不像函數、存儲過程一樣可以被顯式調用。本章將詳細講述常用的AFTER觸發器及其工作原理,在介紹過程中會涉及簡單的事務概念。

     多個用戶對同一數據進行交互稱為并發。如果不加以控制,并發可能引起很多問題。數據庫提供了可以合理解決并發問題的方案。在本章中,從事務開始介紹,然后介紹并發帶來的問題,最后詳細介紹鎖的機制和事務隔離級別。本章內容貫穿整個數據庫系統,理解本章內容對數據庫其他方面的學習有極大幫助,由于涉及較多理論,因此這些內容應當著重理解并通過實驗進行驗證。

    本書適用于

     數據庫管理員

     軟件開發人員

     企業IT運維人員

    學生評價

    韓立剛老師數據庫開發視頻教程:

    http://edu.51cto.com/course/course_id-904.html

    http://edu.51cto.com/course/course_id-926.html

    下面是51CTO學院學生聽完韓老師“數據庫設計與開發”課程后的評價。

    技術支持

    技術交流和資料索取請聯系韓老師。

    韓老師QQ:458717185。

    韓立剛IT技術交流群:301678170。

    韓老師視頻教學網站:http://www.91xueit.com。

    韓老師微信:hanligangdongqing,微信支付書費,韓老師簽名寄書。

    韓老師微信公眾號:han_91xueit。

    致謝

    河北師范大學軟件學院采用“校企合作”的辦學模式:在課程體系設計上與市場接軌;在教師的使用上,大量聘用來自企業一線的工程師;在教材及實驗手冊建設上,結合國內優秀教材的知識體系,大膽創新,開發了一系列理論與實踐相結合的教材(本教材即是其中一本)。在學院新穎模式的培養下,百余名學生進入知名企業實習或已簽訂就業合同,得到了用人企業的廣泛認可。這些改革及成果的取得,首先要感謝河北師范大學校長蔣春瀾教授的大力支持和鼓勵,同時還要感謝河北師范大學校黨委對這一辦學模式的肯定與關心。

    在此對河北師范大學數學與信息科學學院院長鄧明立教授、軟件學院副院長趙書良教授和李文斌副教授表示真誠的謝意,是他們為本書的寫作提供了良好的環境,為本書內容的教學實踐保駕護航,他們與編著者關于教學的溝通與交流為本書提供了豐富的案例和建議。感謝河北師范大學軟件學院教學團隊的每一位成員,感謝河北師范大學軟件學院的每一位學生,是他們的友好、熱情、幫助和關心促成了本書。

    最后,感謝我的家人在本書創作過程中給予我的支持和理解。

    韓立剛

    2016年12月

    第1章 關系數據庫 1
    1.1 關系模型基本概念 1
    1.2 E-R模型到關系模型的轉化 3
    1.3 數據庫設計規范 6
    1.3.1 第一范式(1NF) 6
    1.3.2 第二范式(2NF) 7
    1.3.3 第三范式(3NF) 8
    第2章 Transact-SQL概述 10
    2.1 啟動SQL Server Management Studio
    (SSMS) 10
    2.2 T-SQL語句的類型 12
    2.2.1 DDL語句 12
    2.2.2 DCL語句 13
    2.2.3 DML 14
    2.3 T-SQL語法要素 16
    2.3.1 SQL語句的批處理符號GO 16
    2.3.2 EXEC 17
    2.3.3 注釋符 17
    2.3.4 標識符 18
    2.4 變量 19
    2.5 數據類型 21
    2.5.1 字符串類型 21
    2.5.2 Unicode字符串類型 23
    2.5.3 日期時間類型 23
    2.5.4 數值類型 23
    2.6 運算符 25
    2.6.1 算術運算符 25
    2.6.2 比較運算符 25
    2.6.3 邏輯運算符 25
    2.6.4 連接運算符 26
    2.7 常用函數 26
    2.7.1 聚合函數 27
    2.7.2 數值函數 28
    2.7.3 字符串函數 29
    2.7.4 日期時間函數 30
    2.7.5 數據類型轉換函數 31
    2.7.6 控制NULL的常用函數 32
    2.8 流程控制語句 32
    2.8.1 條件判斷語句IF…ELSE和CASE 33
    2.8.2 循環語句 35
    第3章 查詢基礎 36
    3.1 簡單查詢邏輯處理過程 36
    3.2 數據庫對象的引用規則 39
    3.3 指定表的返回列來篩選列 40
    3.4 使用WHERE篩選行 41
    3.4.1 使用比較運算符過濾數據 41
    3.4.2 搜索范圍內的值 41
    3.4.3 使用IN指定列表搜索條件 42
    3.4.4 使用LIKE關鍵字進行模糊匹配 42
    3.4.5 使用NULL比較搜索條件 43
    3.4.6 篩選時影響性能的注意事項 44
    3.5 格式化結果集 44
    3.5.1 在選擇列表中使用常量、函數和
    表達式 44
    3.5.2 使用別名 45
    3.5.3 使用ORDER BY子句對結果排序 46
    3.5.4 使用TOP限制結果集 48
    3.5.5 使用DISTINCT消除重復行 50
    3.6 使用GROUP BY子句和聚集函數進行
    分組計算 51
    3.6.1 在查詢中使用聚集函數 51
    3.6.2 GROUP BY使用基礎 52
    3.6.3 使用HAVING子句篩選分組后
    的數據 53
    第4章 多表聯接查詢和數據匯總 55
    4.1 聯接基礎知識 55
    4.1.1 在FROM子句中聯接 56
    4.1.2 在WHERE子句中聯接 56
    4.2 交叉聯接 57
    4.3 內聯接 57
    4.4 外聯接 59
    4.4.1 左外聯接 59
    4.4.2 右外聯接 60
    4.4.3 完全外部聯接 60
    4.5 自聯接 62
    4.5.1 使用同一列進行自聯接 62
    4.5.2 使用不同列進行自聯接 62
    4.6 聯接查詢的邏輯處理過程 64
    4.7 多表聯接查詢 64
    4.8 UNION合并結果集 64
    4.8.1 UNION和UNION ALL 65
    4.8.2 對合并結果集進行排序 66
    4.8.3 結果集的合并順序 66
    4.9 匯總數據 67
    4.9.1 ROLLUP 67
    4.9.2 CUBE 70
    4.9.3 使用GROUPING SETS 70
    4.9.4 GROUPING查看匯總行并區分
    NULL 71
    第5章 子查詢 73
    5.1 獨立子查詢 73
    5.1.1 獨立標量子查詢 74
    5.1.2 獨立多值子查詢 74
    5.2 相關子查詢 75
    5.3 使用IN(NOT IN)和EXISTS(NOT
    EXISTS)謂詞 76
    5.3.1 IN和NOT IN 77
    5.3.2 EXISTS和NOT EXISTS 77
    5.4 表表達式 81
    5.4.1 派生表 81
    5.4.2 公用表表達式(CTE) 84
    第6章 開窗函數和行列轉換 89
    6.1 窗口和開窗函數 89
    6.2 排名窗口函數 90
    6.2.1 使用ROW_NUMBER()進行
    分區編號 91
    6.2.2 使用RANK()和DENSE_RANK()
    進行分區排名 94
    6.2.3 使用NTILE()進行數據分組 96
    6.3 聚合窗口函數 97
    6.4 行列轉換 100
    6.4.1 行轉列 100
    6.4.2 列轉行 105
    第7章 數據修改 109
    7.1 插入數據 109
    7.1.1 使用INSERT和VALUES插入
    數據 109
    7.1.2 使用SELECT INTO插入數據 110
    7.1.3 使用INSERT和SELECT插入
    數據 111
    7.2 刪除數據 112
    7.2.1 使用DELETE刪除行 112
    7.2.2 使用TRUNCATE TABLE刪除
    所有行 113
    7.3 更新數據 113
    7.3.1 使用SET和WHERE更新數據 113
    7.3.2 更新基于其他表的數據 113
    7.4 使用MERGE合并數據 114
    7.5 通過表表達式修改數據 118
    第8章 數據完整性 121
    8.1 數據完整性的類型和實現方式 121
    8.1.1 域完整性及實現方式 122
    8.1.2 實體完整性及實現方式 122
    8.1.3 參照完整性及實現方式 122
    8.2 實現實體完整性 124
    8.2.1 使用主鍵 124
    8.2.2 使用UNIQUE約束 127
    8.2.3 使用自增列 127
    8.3 實現域完整性 131
    8.3.1 CHECK約束 131
    8.3.2 DEFAULT約束 132
    8.3.3 NOT NULL定義 133
    8.4 參照完整性 134
    8.4.1 實現表間列的參照完整性 134
    8.4.2 實現表內列的參照完整性 137
    8.5 使用關系圖實現參照完整性 138
    8.6 使約束失效 141
    8.7 使用圖形界面實現數據完整性 141
    8.7.1 添加主鍵 141
    8.7.2 設置UNIQUE約束 142
    8.7.3 設置CHECK約束 142
    8.7.4 設置默認值約束 144
    8.7.5 設置外鍵 145
    8.7.6 禁用約束 147
    第9章 索引 148
    9.1 數據的存儲方式 149
    9.1.1 頁(Page) 149
    9.1.2 區(Extent) 152
    9.1.3 索引分配映射頁(IAM頁) 152
    9.1.4 估算表的大小 153
    9.2 B樹(Balanced Tree) 154
    9.3 查看頁內容的工具 156
    9.3.1 DBCC IND 156
    9.3.2 DBCC PAGE 158
    9.4 堆(Heaps) 160
    9.5 聚集索引 162
    9.5.1 約束與索引的關系 162
    9.5.2 唯一聚集索引的物理結構 163
    9.5.3 不唯一聚集索引的物理結構 167
    9.5.4 使用聚集索引查找數據的
    執行計劃 168
    9.6 非聚集索引及其物理結構 169
    9.6.1 在堆中的非聚集索引 169
    9.6.2 在聚集表中的非聚集索引 172
    9.6.3 使用非聚集索引查找數據的
    執行計劃 175
    9.7 修改數據對索引結構的影響 176
    9.7.1 頁拆分和行移動現象 176
    9.7.2 插入行 178
    9.7.3 刪除行 179
    9.7.4 更新行 180
    9.8 碎片和索引維護 180
    9.8.1 碎片 180
    9.8.2 維護索引 182
    9.9 復合索引 187
    9.10 包含列索引 188
    9.11 索引交叉 188
    9.12 篩選索引 189
    9.13 全文搜索 190
    9.13.1 創建和修改全文目錄 191
    9.13.2 創建全文索引 191
    9.13.3 全文搜索的查詢方法 192
    9.14 統計信息 194
    9.14.1 了解統計信息的作用 194
    9.14.2 查看和分析統計信息 195
    9.14.3 創建統計信息 198
    9.14.4 更新統計信息 198
    9.14.5 同步和異步統計信息更新 200
    9.15 基于索引設計的考慮 200
    第10章 視圖 202
    10.1 視圖簡介 202
    10.2 使用標準視圖 204
    10.2.1 創建標準視圖 204
    10.2.2 通過視圖更新數據 206
    10.2.3 修改和刪除視圖 208
    10.3 視圖選項 209
    10.3.1 使用ENCRYPTION選項 209
    10.3.2 使用SCHEMABINDING選項 210
    10.3.3 使用CHECK OPTION選項 211
    10.4 使用索引視圖 212
    10.4.1 創建索引視圖 213
    10.4.2 索引視圖的性能 213
    10.4.3 更新索引視圖 214
    10.5 視圖的優點 215
    第11章 存儲過程 216
    11.1 存儲過程的類型 216
    11.1.1 系統存儲過程 217
    11.1.2 擴展存儲過程 217
    11.1.3 用戶自定義存儲過程 217
    11.2 SQL存儲過程 218
    11.2.1 創建無參數的存儲過程 218
    11.2.2 修改和刪除存儲過程 220
    11.2.3 創建帶參數的存儲過程 221
    11.2.4 獲取存儲過程的執行結果 223
    11.3 存儲過程示例分析 224
    11.4 存儲過程的解析特點 225
    11.5 存儲過程的編譯、重編譯 226
    11.6 使用存儲過程的優缺點 227
    第12章 用戶自定義函數 229
    12.1 UDF簡介 229
    12.2 標量UDF 230
    12.3 內聯表值函數 232
    12.4 多語句表值函數 233
    12.5 UDF的修改和刪除 235
    12.6 UDF的調用分析 235
    第13章 觸發器 239
    13.1 觸發器的概念和分類 239
    13.2 DML觸發器 240
    13.2.1 兩張特殊的臨時表 240
    13.2.2 insert觸發器 241
    13.2.3 delete觸發器 242
    13.2.4 update觸發器 244
    13.2.5 禁用和啟用觸發器 244
    13.2.6 檢測基于列修改的觸發器 244
    13.2.7 FIRST觸發器和LAST觸發器 245
    13.3 使用觸發器實現審核跟蹤 246
    13.4 DML觸發器的工作原理和事務控制 246
    13.4.1 觸發器的工作原理 247
    13.4.2 DML觸發器的事務控制 248
    13.5 DDL觸發器 249
    13.5.1 創建數據庫級別的DDL觸發器 249
    13.5.2 創建服務器級別的DDL觸發器 250
    第14章 事務和鎖 251
    14.1 事務 251
    14.1.1 顯式事務處理模式 252
    14.1.2 自動提交事務模式 253
    14.1.3 隱式事務處理模式 253
    14.1.4 嵌套事務的控制 254
    14.1.5 事務、事務日志和檢查點 255
    14.2 并發訪問引起的問題 257
    14.3 鎖 260
    14.3.1 鎖的粒度和鎖升級 260
    14.3.2 鎖的類型和查看鎖 261
    14.3.3 鎖的兼容性 265
    14.4 設置事務隔離級別 266
    14.4.1 SQL標準定義的4種事務隔離
    級別 266
    14.4.2 行版本的事務隔離級別 271
    14.5 隔離級別、鎖和并發問題的關系 274
    14.6 死鎖 275





最新評論共有 0 位網友發表了評論
發表評論
評論內容:不能超過250字,需審核,請自覺遵守互聯網相關政策法規。
用戶名: 密碼:
匿名?
注冊
主站蜘蛛池模板: 国产精品二| 国内自拍视频一区二区三区| 99久久久久国产| 日本欧美一区二区免费视 | 99国产福利| 欧美日韩激情一区二区三区 | 国产乱子伦真实china| 天天添| 成人免费观看在线网址| 欧美特级视频| 天天干天| 国产午夜精品福利久久| 深夜一级毛片| 人人做人人爽人人爱影视| 久久久久久久久女黄| 最新国产在线观看福利91| 国语对白免费观看网址| 亚洲乱码在线观看| 99精品视频在线观看免费播放| 女人张腿给男人桶视频免费版| 天天干伊人| 国产欧美激情一区二区三区| 色播视频在线| 中文字幕一区二区视频| 国产精品一区视频| 理论片日韩| 五月婷婷综合在线视频| 99久女女精品视频在线观看| 久久国产精品伦理| 午夜dj影院在线视频观看完整| 91这里只有精品| 劲爆欧美第1页婷婷| 色播亚洲精品网站 亚洲第一| 91精品久久久久久久久网影视 | 99在线视频免费| 激情图片激情文学| 青草99| 香蕉大久久| 中文字幕av在线| 99精品视频在线成人精彩视频| 好吊妞视频haodiaoniucom|