精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用Oracle中的emp、dept來學習Django ORM

開發 后端 Oracle
學習Django的時候,總是覺得這部分內容和實際的應用有一定的差別或者距離。一方面Django自帶的ORM對于底層數據庫來說是一種適配性很強的組件,可以不強依賴于某一種數據庫,sqlite,MySQL,Oracle,PG等等都可以,學習起來需要一定的周期。

使用Oracle中的emp、dept來學習Django ORM 

學習Django的時候,總是覺得這部分內容和實際的應用有一定的差別或者距離。一方面Django自帶的ORM對于底層數據庫來說是一種適配性很強的組件,可以不強依賴于某一種數據庫,sqlite,MySQL,Oracle,PG等等都可以,學習起來需要一定的周期。另外一方面是因為這種方式是通用的API,一下子沒有了SQL語句,要理解并接受這種思想,需要一點時間,對很多DBA來說需要適應。第三點就是沒有融會貫通,好像看明白了,但是實際寫的時候發現還是摸黑,不知道從何入手。

所以我就換個思路,從數據庫的角度來反向解析Django怎么實現我們常見的數據需求。先做減法,側重于說查詢的部分。常見的數據需求,這個需求有些大,怎么讓他更通用呢,我想到了Oracle里面的emp,dept,自打學習數據庫,很多的測試案例就和這兩個表分不開,所以我們就從這個為切入點來逐步分析。

有的同學可能開始就打了退堂鼓,Oracle的還要轉換語句,還有數據類型,而使用的數據庫是MySQL,是不是有些麻煩啊,其實這些都不是事兒,不花一點功夫肯定難有收獲。

我們配置下emp,dept的結構,是在Django的models.py的文件中配置即可。

 

  1. from django.db import models 
  2.  
  3. import django.utils.timezone as timezone  
  4.  
  5.  
  6. class dept(models.Model): 
  7.  
  8.     deptno = models.AutoField(primary_key=True
  9.  
  10.     dname = models.CharField(max_length=30) 
  11.  
  12.     loc = models.CharField(max_length=30, default=' ' 
  13.  
  14.  
  15.     class Meta: 
  16.  
  17.         db_table = 'dept' 
  18.  
  19.         verbose_name = 'DEPT' 
  20.  
  21.         verbose_name_plural = 'DEPT' 
  22.  
  23.         ordering = ['deptno' 
  24.  
  25.  
  26.     def __unicode__(self): 
  27.  
  28.         return '%s %s' % (self.deptno, self.dname)  
  29.  
  30.  
  31. class dept(models.Model): 
  32.  
  33.     deptno = models.AutoField(primary_key=True
  34.  
  35.     dname = models.CharField(max_length=30) 
  36.  
  37.     loc = models.CharField(max_length=30, default=' ' 
  38.  
  39.  
  40.     class Meta: 
  41.  
  42.         db_table = 'dept' 
  43.  
  44.         verbose_name = 'DEPT' 
  45.  
  46.         verbose_name_plural = 'DEPT' 
  47.  
  48.         ordering = ['deptno' 
  49.  
  50.  
  51.     def __unicode__(self): 
  52.  
  53.         return '%s %s' % (self.deptno, self.dname)  
  54.  
  55.  
  56. class emp(models.Model): 
  57.  
  58.     empno = models.AutoField(primary_key=True
  59.  
  60.     ename = models.CharField(max_length=30) 
  61.  
  62.     job = models.CharField(max_length=30) 
  63.  
  64.     mgr = models.IntegerField() 
  65.  
  66.     hiredate = models.DateTimeField('hire date'default=timezone.now) 
  67.  
  68.     sal = models.IntegerField() 
  69.  
  70.     comm = models.IntegerField 
  71.  
  72.     deptno = models.ForeignKey('dept' 
  73.  
  74.  
  75.     class Meta: 
  76.  
  77.         db_table = 'emp' 
  78.  
  79.         verbose_name = 'EMP' 
  80.  
  81.         verbose_name_plural = 'EMP' 
  82.  
  83.         verbose_name_plural = 'EMP' 
  84.  
  85.         ordering = ['empno''ename' 
  86.  
  87.  
  88.     def __unicode__(self): 
  89.  
  90.         return '%s %s' % (self.empno, self.ename) 

 

其實內容來看倒也不難,類型是通用的。

使用python manage.py makemigrations得到變化的結構和數據

 

  1. Migrations for 'scott'
  2.  
  3.   0001_initial.py: 
  4.  
  5.     - Create model dept 
  6.  
  7.     - Create model emp 

 

得到的SQL如下:

  1. >python manage.py sqlmigrate scott 0001 
  2.  
  3. BEGIN
  4.  
  5.     CREATE TABLE "dept" ("deptno" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "dname" varchar(30) NOT NULL"loc" varchar(30) NOT NULL); 
  6.  
  7. CREATE TABLE "emp" ("empno" integer NOT NULL PRIMARY KEY AUTOINCREMENT, "ename" varchar(30) NOT NULL"job" varchar(30) NOT NULL"mgr" integer NOT NULL 
  8.  
  9. "hiredate" datetime NOT NULL"sal" integer NOT NULL"deptno_id" integer NOT NULL REFERENCES "dept" ("deptno")); 
  10.  
  11. CREATE INDEX "emp_d6b13549" ON "emp" ("deptno_id"); 
  12.  
  13. COMMIT

 

簡單確認下,我們就可以生成創建出來這兩個表了,使用python manage.py migrate即可。

emp的表結構如下:

dept的表結構如下:

我們初始化一下數據,這個時候直接使用SQL也可以.

dept表的初始化語句如下:

  1. insert into dept values(10,'ACCOUNTING','NEW YORK'); 
  2.  
  3. insert into dept values(20,'RESEARCH','DALLAS'); 
  4.  
  5. insert into dept values(30,'SALES','CHICAGO'); 
  6.  
  7. insert into dept values(40,'OPERATIONS','BOSTON'); 

 

emp表的初始化語句如下,特別需要注意的就是字段不是deptno,而是deptno_id

  1. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7369,'SMITH','CLERK',7902,'1980-12-17',800.00,20); 
  2.  
  3. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7499,'ALLEN','SALESMAN',7698,'1981-2-20',1600.00,30); 
  4.  
  5. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7521,'WARD','SALESMAN',7698,'1981-2-22',1250.00,30); 
  6.  
  7. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7566,'JONES','MANAGER',7839,'1981-4-2',2975.00,20); 
  8.  
  9. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7654,'MARTIN','SALESMAN',7698,'1981-9-28',1250.00,30); 
  10.  
  11. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7698,'BLAKE','MANAGER',7839,'1981-5-1',2850.00,30); 
  12.  
  13. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7782,'CLARK','MANAGER',7839,'1981-6-9',2450.00,10); 
  14.  
  15. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7788,'SCOTT','ANALYST',7566,'1987--4-19',3000.00,20); 
  16.  
  17. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7839,'KING','PRESIDENT',0,'1981-11-17',5000.00,10); 
  18.  
  19. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7844,'TURNER','SALESMAN',7698,'1981-9-8',1500.00,30); 
  20.  
  21. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7876,'ADAMS','CLERK',7788,'1987-5-23',1100.00,20); 
  22.  
  23. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7900,'JAMES','CLERK',7698,'1981-12-3',950,30); 
  24.  
  25. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7902,'FORD','ANALYST',7566,'1981-12-3',3000,20); 
  26.  
  27. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(7934,'MILLER','CLERK',7782,'1982-1-23',1300,10); 
  28.  
  29. insert into emp(EMPNO,ENAME,JOB,MGR,HIREDATE,SAL,DEPTNO_ID) values(9999,'SHUNPING','CLERK',7782,'1988-5-5',2456.34,10); 

剩下的事情就是實踐了。我們就選擇emp,dept常見的一些SQL來看看ORM能否完成這個任務。

1、顯示所有的姓名、工種、工資和獎金,按工種降序排列,若工種相同則按工資升序排列。

如果使用MySQL,語句和數據結果如下:

 

  1. mysql> select ename,job,sal from emp order by job desc,sal asc
  2.  
  3. +----------+-----------+------+ 
  4.  
  5. | ename    | job       | sal  | 
  6.  
  7. +----------+-----------+------+ 
  8.  
  9. | WARD     | SALESMAN  | 1250 | 
  10.  
  11. | MARTIN   | SALESMAN  | 1250 | 

 

使用order_by的方式來處理,可以看到有了一點頭緒,但是還是沒有實現需求。

  1. >>> emp.objects.all().order_by('job'
  2.  
  3. [<emp: 7788 SCOTT>, <emp: 7902 FORD>, <emp: 7369 SMITH>, .... 

 

所以我們的重點就是排序了,ORM本身有order_by函數,還可以調整DESC,ASC,所以一個基本符合要求的方式如下:

  1. >>> emp.objects.all().order_by(('-job'),('sal')) 
  2.  
  3. [<emp: 7521 WARD>, <emp: 7654 MARTIN>, <emp: 7844 TURNER> 

 

第二個題目也是類似的。

2、查詢員工的姓名和入職日期,并按入職日期從先到后進行排列。

SQL語句如下:

  1. select ename,hiredate from emp order by hiredate asc; 

現在的語句如下:

  1. emp.objects.all().order_by(('hiredate')) 

3. 計算工資***的員工

這個需求充分考慮到聚合函數的部分,我們可以使用aggregate來完成這個工作。

  1. >>> emp.objects.all().aggregate(Max('sal')) 
  2.  
  3. {'sal__max': 5000} 

4.查詢至少有一個員工的部門信息。  

這個部分會涉及到表關聯關系,如果是通過SQL的方式,語句如下:

  1. select * from dept where deptno in (select distinct deptno from emp where mgr is not null); 

執行的結果如下,可以看到***種方式能出結果,但是還是存在重復值,需要用distinct過啦一下。

 

  1. >>> dept.objects.filter(emp__mgr__isnull=False
  2.  
  3. [<dept: 10 ACCOUNTING>, <dept: 10 ACCOUNTING>, <dept: 10 ACCOUNTING>, <dept: 10 ACCOUNTING>, <dept: 20 RESEARCH>, <dept: 20 RESEARCH>, <dept: 20 RESEARCH>, <dept: 20 RESEARCH>, <dept: 20 RESEARCH>, <dept: 30 SALES>, <dept: 30 SALES>, <dept: 30 SALES>, <dept: 30 SALES>, <dept: 30 SALES>, <dept: 30 SALES>] 
  4.  
  5. >>> dept.objects.filter(emp__mgr__isnull=False).distinct() 
  6.  
  7. [<dept: 10 ACCOUNTING>, <dept: 20 RESEARCH>, <dept: 30 SALES>] 
  8.  
  9. >>>  

 

后續繼續補充ORM的內容。 

責任編輯:龐桂玉 來源: 楊建榮的學習筆記
相關推薦

2010-08-09 13:37:09

FlexDjango

2010-02-01 10:30:13

Python世界

2020-12-03 09:01:29

Django

2010-04-29 12:13:53

Oracle使用alt

2010-04-14 09:54:56

Oracle數據庫

2023-11-03 08:28:19

2022-03-07 16:30:10

數據庫ORM開發人員

2023-02-03 11:40:49

機器學習分析情感

2019-05-20 15:08:07

PythonPyPI庫attrs

2010-04-08 14:23:14

Oracle服務

2010-11-18 16:18:23

EXECUTE IMM

2011-04-08 15:50:54

Oracleover函數

2017-07-19 16:02:27

Python數據科學數據分析

2018-06-14 14:05:48

機器學習大數據卡通上色

2011-06-27 13:19:36

OMF托管文件ASM

2009-04-30 09:45:03

Oracle索引限制

2010-04-26 14:03:02

Oracle使用

2011-08-01 15:57:58

2020-03-26 10:43:57

CSS Grid Ge Grid代碼

2021-04-09 06:15:54

開源工具Python編程語言
點贊
收藏

51CTO技術棧公眾號

丰满圆润老女人hd| 久久国产精品网| 老熟妇一区二区三区啪啪| 精品一区二区三区在线| 欧美日韩日本视频| 中国老女人av| 精品久久国产视频| 伊人成人在线| 一区二区三区www| 亚洲黄色a v| 国产cdts系列另类在线观看| 国产不卡视频一区| 日本三级韩国三级久久| 精品在线观看一区| 国产精品久久久久av蜜臀| 日韩欧美国产黄色| 中文字幕免费在线不卡| 全部免费毛片在线播放一个| 日韩国产精品大片| 久99九色视频在线观看| 日韩精品卡通动漫网站| 不卡精品视频| 色综合中文综合网| 日本一本草久p| 亚洲av成人精品一区二区三区在线播放| 日韩**一区毛片| 欧美激情在线狂野欧美精品| 中文字幕免费高清| av成人资源网| 精品视频1区2区| 黄色一级片在线看| 毛片激情在线观看| 2021国产精品久久精品| av成人在线电影| 一区二区视频免费| 亚洲永久免费精品| 色综合久久久久久中文网| 精品人妻一区二区三区四区| 极品束缚调教一区二区网站| 欧美日韩成人在线一区| 欧美深夜福利视频| av免费在线网站| 国产精品午夜免费| 蜜桃视频在线观看成人| 成人午夜视频一区二区播放| 麻豆精品一二三| 欧美孕妇性xx| 日韩av免费网址| 亚洲精品成人| www.欧美精品一二三区| b站大片免费直播| 秋霞在线一区| 精品国产乱码久久久久久浪潮 | 亚洲高清成人| 美日韩在线视频| 青青操在线播放| 欧美日韩国产高清电影| 国产亚洲欧洲在线| 亚洲精品成人无码| 精品国产一区二区三区四区| 亚洲精品中文字幕有码专区| 国产精品伦子伦| 国产香蕉精品| 精品国产精品网麻豆系列| 国产精品欧美性爱| 999久久久精品一区二区| 91精品国产综合久久久久久久 | 男女男精品视频网站| 精品精品99| 亚洲视频综合网| 亚洲性猛交xxxx乱大交| 国产99久久| 国产亚洲欧美视频| 任你操精品视频| 婷婷亚洲图片| 久久成人精品视频| 精品99久久久久成人网站免费| 久久久久蜜桃| 欧美精品免费在线观看| 国产一级在线播放| 国产午夜久久| 国产成人精品最新| 一级黄色大片免费观看| 狠狠色狠狠色综合| 成人精品水蜜桃| 五月天久久久久久| 国产亚洲精品精华液| 亚洲欧洲在线一区| 亚洲性图自拍| 激情久久av一区av二区av三区| 黄www在线观看| 成人国产精品| 日韩亚洲欧美在线观看| 少妇被狂c下部羞羞漫画| 九九热线有精品视频99| xx视频.9999.com| 免费在线观看黄色av| 国产精品试看| 国产在线观看精品| 国产成人无码www免费视频播放| 91亚洲午夜精品久久久久久| 日韩影院一区| 影音先锋男人资源在线| 色拍拍在线精品视频8848| 色播五月激情五月| www.豆豆成人网.com| 亚洲欧美在线播放| 玖玖爱这里只有精品| 亚洲毛片播放| 国产区亚洲区欧美区| 蜜桃视频污在线观看| 久久精品一二三| www.69av| 51一区二区三区| 欧美va亚洲va香蕉在线| 超薄肉色丝袜一二三| 亚洲一级高清| 国产免费一区视频观看免费| 熟妇人妻一区二区三区四区 | 国产精品 日韩| 第一福利在线| 亚洲一区二区三区在线看| 亚洲 欧美 另类人妖| 粉嫩的18在线观看极品精品| 综合136福利视频在线| 亚洲国产成人精品激情在线| 激情五月婷婷综合| 欧美主播一区二区三区美女 久久精品人| 国产鲁鲁视频在线观看特色| 色一情一乱一乱一91av| 色哟哟视频在线| 色偷偷综合网| 日韩av观看网址| 丁香六月天婷婷| 亚洲色图欧美偷拍| 另类小说第一页| 小说区图片区色综合区| 欧美激情精品久久久久久| 91九色蝌蚪91por成人| 国产日韩欧美在线一区| 日韩在线综合网| aaa国产精品视频| 久久亚洲精品视频| 91高潮大合集爽到抽搐| 国产清纯在线一区二区www| 日韩国产一级片| 99精品在免费线中文字幕网站一区| 精品国产一区二区在线| 国产一级精品毛片| 国产欧美日韩中文久久| 熟女人妇 成熟妇女系列视频| 精品精品精品| 午夜精品久久久久久久99黑人| 成人h动漫精品一区二区无码| 成人免费小视频| 国产日韩欧美久久| 色777狠狠狠综合伊人| 国产精品久久久久久久午夜| 国产精品秘入口| 在线观看网站黄不卡| 中文字幕免费视频| 美女www一区二区| 亚洲免费在线精品一区| 外国成人毛片| 久久伊人精品一区二区三区| 99久久免费国产精精品| 亚洲欧美日韩综合aⅴ视频| 亚洲欧美天堂在线| 欧美成人一品| 风间由美久久久| 俺来也官网欧美久久精品| 亚洲国产又黄又爽女人高潮的| 久久9999久久免费精品国产| av午夜一区麻豆| www黄色日本| 国产欧美高清视频在线| 国产精品亚洲精品| av毛片在线免费看| 精品国产乱码久久久久久夜甘婷婷 | 国产精品麻豆| 久久久噜噜噜久久| 爽爽视频在线观看| 欧美亚洲动漫制服丝袜| 超碰人人人人人人人| 国产在线播放一区| 欧美精品久久久久久久自慰| 亚洲a级精品| 国产精品亚洲一区二区三区| 国产黄大片在线观看画质优化| 精品久久久久久久久久久久久久久| 粉嫩aⅴ一区二区三区| 久久久久久久综合日本| 免费精品99久久国产综合精品应用| 欧美区亚洲区| 欧美成ee人免费视频| 四虎精品永久免费| 韩国三级日本三级少妇99| 国产精品影院在线| 日韩一区二区不卡| 九九精品免费视频| 最近日韩中文字幕| 中出视频在线观看| 久久成人免费网| 日韩小视频在线播放| 日韩免费特黄一二三区| 国产精品午夜av在线| 国产精品久久久久久久久免费高清| 欧美美女操人视频| 黄色在线网站| 精品乱码亚洲一区二区不卡| 国内av在线播放| 亚洲综合免费观看高清完整版 | 精品视频在线免费| 国产精品第56页| 国产精品天天看| www国产视频| 韩国精品久久久| 色欲av无码一区二区人妻| 亚洲乱码电影| 日本高清不卡一区二区三| 亚洲国产视频二区| 国产精品美女免费视频| 国产拍在线视频| 久久人人爽人人爽爽久久| 性插视频在线观看| 日韩欧美一级二级三级| 中文字幕永久在线观看| 精品久久久久久| 久久久久99精品成人片毛片| 国产精品区一区二区三区| 无码人妻aⅴ一区二区三区 | 中文字幕精品视频在线| 狠狠色丁香九九婷婷综合五月| 看av免费毛片手机播放| 欧美日韩少妇| 一级全黄肉体裸体全过程| 精品国产a一区二区三区v免费| 国产精品乱子乱xxxx| 国产一区二区三区精品在线观看 | 婷婷久久五月天| 日韩美女国产精品| 国产精品综合久久久久久| 深夜福利一区二区三区| 成人在线视频福利| 国产亚洲精彩久久| 国产美女久久精品| 91九色综合| 国产精品久久中文| julia一区二区三区中文字幕| 日本一区二区不卡| 伊人久久综合一区二区| 51色欧美片视频在线观看| 9999热视频在线观看| 欧美激情二区三区| 欧美人与牲禽动交com | 欧美大胆a人体大胆做受| 韩国日本不卡在线| 亚洲少妇视频| 日本韩国欧美精品大片卡二| 成人线上视频| 日韩av男人的天堂| 视频精品导航| 成人国产精品久久久| 国产精品高清一区二区| 91福利入口| 99re热精品视频| 国产精品一区二| 日韩av网址大全| 欧美精品一区二区视频| 视频一区在线观看| 亚洲国产另类久久久精品极度| 色97色成人| 黄色污污在线观看| 欧美天天视频| 中文字幕日本最新乱码视频| 久久中文精品| 污污的视频免费| 国产成人自拍网| chinese麻豆新拍video| 久久久一区二区| 秋霞欧美一区二区三区视频免费 | 久久精品欧美一区二区| 精品久久久久久久久中文字幕| 国产黄色片免费看| 欧美在线观看一区二区| 国产免费高清av| 亚洲国产欧美精品| 丁香婷婷在线| 欧美精品在线视频观看| 九色porny视频在线观看| 国产精品va在线播放我和闺蜜| 国产精品久一| 久久er99热精品一区二区三区 | 麻豆国产精品一区二区三区 | 日产精品久久久久| 91传媒视频在线播放| 国产av无码专区亚洲a∨毛片| 亚洲第一精品夜夜躁人人爽| 九色视频在线观看免费播放| 久久香蕉国产线看观看网| 老色鬼在线视频| 国产欧亚日韩视频| 丝袜av一区| 男同互操gay射视频在线看| 亚洲欧美日韩在线观看a三区| 欧美大片久久久| 91在线视频官网| 黄色香蕉视频在线观看| 欧美午夜电影在线| jlzzjlzzjlzz亚洲人| 亚洲视频在线看| 黑人玩欧美人三根一起进| 国产精品影片在线观看| 精品成人自拍视频| 日日噜噜噜夜夜爽爽| 久久国产福利| 人妻互换一二三区激情视频| 欧美国产一区二区在线观看| 色播视频在线播放| 7799精品视频| 精品欧美不卡一区二区在线观看| 欧美日韩第一视频| 欧洲精品久久久久毛片完整版| 久久精品99久久| 欧美1区视频| 亚洲欧美日韩一级| 久久网这里都是精品| 久久久久久久久久久久久久久久久| 欧美三级电影网站| 日韩专区一区二区| 久久久久久久久久久久久久久久久久av | 都市激情亚洲综合| 国产欧美日韩一区| 欧美日韩亚洲一区三区| 91精品999| 中文字幕一区二区在线观看| 无码人妻精品一区二区| 日韩精品免费综合视频在线播放| 污视频网站免费在线观看| 成人a免费视频| 成人a'v在线播放| 亚洲爆乳无码专区| 91免费看片在线观看| 天堂资源在线播放| 欧美xxxx老人做受| 亚洲国产精品精华素| 51精品国产人成在线观看| 久久久久久久久久久9不雅视频| 中文字幕亚洲欧洲| 中文字幕一区三区| 国产一区二区三区视频免费观看| 正在播放国产一区| 成人午夜毛片| 午夜欧美一区二区三区免费观看| 老牛国产精品一区的观看方式| 国产在线观看无码免费视频| 午夜精品影院在线观看| 四季av日韩精品一区| 97热在线精品视频在线观看| 国产精品黄网站| 欧美视频免费看欧美视频| 成人av午夜影院| 一区二区三区视频免费看| 亚洲韩国欧洲国产日产av| 男人天堂视频在线观看| 久久久久久精| 视频一区在线视频| a级黄色免费视频| 欧美疯狂性受xxxxx喷水图片| 高清全集视频免费在线| 91九色视频导航| 欧美a级一区| 看全色黄大色黄女片18| 狠狠躁夜夜躁久久躁别揉| 国产综合在线观看| 国产精品中文在线| 欧美激情无毛| 欧美无人区码suv| 色av一区二区| 欧美成人三区| 成人av免费在线看| 国产精品资源| 国产aaaaaaaaa| 日韩精品专区在线影院重磅| 国产三级电影在线播放| 日韩欧美99| 国产精品综合一区二区| 日韩黄色三级视频| 亚洲午夜国产成人av电影男同| 成人免费91| 少妇人妻在线视频| 国产精品无圣光一区二区| 亚洲国产成人一区二区| 欧美一区二区影院| 天天射天天综合网| 中文字幕在线永久| 91麻豆精品91久久久久同性| 精品众筹模特私拍视频| 日本一区二区三区精品视频| 国产综合久久久久久久久久久久|