婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > MariaDB數據庫的外鍵約束實例詳解

MariaDB數據庫的外鍵約束實例詳解

熱門標簽:地圖標注什么軟件好用 西藏地圖標注改進點 地圖標注百度競價 神行者百貨商場地圖標注 安陽手機自動外呼系統原理是什么 外呼系統線路經常出問題嗎 外呼系統怎樣才能不封號 如何辦理400客服電話 地圖標注專員入駐

外鍵

外鍵的用途是確保數據的完整性。它通常包括以下幾種:

1 實體完整性,確保每個實體是唯一的(通過主鍵來實施)

2 域完整性,確保屬性值只從一套特定可選的集合里選擇

3 關聯完整性,確保每個外鍵或是NULL(如果允許的話)或含有與相關主鍵值相配的值

1.什么是外鍵約束

與主鍵約束不同,創建外鍵約束不會自動創建對應的索引。 但是由于以下原因,對外鍵手動創建索引通常是有用的:

  • 當在查詢中組合相關表中的數據時,經常在聯接條件中使用外鍵列,方法是將一個表的外鍵約束中的一列或多列與另一個表中的主鍵列或唯一鍵列匹配。 索引使 數據庫引擎 可以在外鍵表中快速查找相關數據。 但是,創建此索引并不是必需的。 即使沒有對兩個相關表定義主鍵或外鍵約束,也可以對來自這兩個表中的數據進行組合,但兩個表間的外鍵關系說明已用其鍵作為條件對其進行了優化,以便組合到查詢中。
  • 對主鍵約束的更改可由相關表中的外鍵約束檢查。

外鍵約束(foreign key)就是表與表之間的某種約定的關系,由于這種關系的存在,我們能夠讓表與表之間的數據,更加的完整,關連性更強。

關于數據表的完整性和關連性,可以舉個例子

有二張表,一張是用戶表,一張是訂單表:

1.如果我刪除了用戶表里的用戶,那么訂單表里面跟這個用戶有關的數據,就成了無頭數據了,不完整了。
2.如果我在訂單表里面,隨便插入了一條數據,這個訂單在用戶表里面,沒有與之對應的用戶。這樣數據也不完整了。

如果有外鍵的話,就方便多了,可以不讓用戶刪除數據,或者刪除用戶的話,通過外鍵同樣刪除訂單表里面的數據,這樣也能讓數據完整。

通過外鍵約束,每次插入或更新數據表時,都會檢查數據的完整性。

2.創建外鍵約束

2.1 方法一:通過create table創建外鍵

語法:

create table 數據表名稱(
...,
[CONSTRAINT [約束名稱]] FOREIGN KEY [外鍵字段] 
 REFERENCES [外鍵表名](外鍵字段,外鍵字段2…..)
 [ON DELETE CASCADE ]
 [ON UPDATE CASCADE ]
)

參數的解釋:

RESTRICT: 拒絕對父表的刪除或更新操作。
CASCADE: 從父表刪除或更新且自動刪除或更新子表中匹配的行。ON DELETE CASCADE和ON UPDATE CASCADE都可用

注意:on update cascade是級聯更新的意思,on delete cascade是級聯刪除的意思,意思就是說當你更新或刪除主鍵表,那外鍵表也會跟隨一起更新或刪除。

精簡化后的語法:

foreign key 當前表的字段 references 外部表名 (關聯的字段) type=innodb 

2.1.1 插入測試數據

例子:我們創建一個數據庫,包含用戶信息表和訂單表

MariaDB [book]> create database market;  # 創建market數據庫
Query OK, 1 row affected (0.00 sec)

MariaDB [book]> use market;    # 使用market數據庫
Database changed

MariaDB [market]> create table userprofile(id int(11) not null auto_increment, name varchar(50) not null default '', sex int(1) not null default '0', primary key(id))ENGINE=innodb; # 創建userprofile數據表,指定使用innodb引擎
Query OK, 0 rows affected (0.07 sec)

MariaDB [market]> create table user_order(o_id int(11) auto_increment, u_id int(11) default '0', username varchar(50), money int(11), primary key(o_id), index(u_id), foreign key order_f_key(u_id) references userprofile(id) on delete cascade on update cascade);  # 創建user_order數據表,同時為user_order表的u_id字段做外鍵約束,綁定userprofile表的id字段
Query OK, 0 rows affected (0.04 sec)

MariaDB [market]> insert into userprofile(name,sex)values('HA',1),('LB',2),('HPC',1); # 向userprofile數據表插入三條記錄
Query OK, 3 rows affected (0.01 sec)
Records: 3 Duplicates: 0 Warnings: 0

MariaDB [market]> select * from userprofile; # 查詢userprofile數據表的所有記錄
+----+------+-----+
| id | name | sex |
+----+------+-----+
| 1 | HA | 1 |
| 2 | LB | 2 |
| 3 | HPC | 1 |
+----+------+-----+
3 rows in set (0.00 sec)

MariaDB [market]> insert into user_order(u_id,username,money)values(1,'HA',234),(2,'LB',146),(3,'HPC',256);   # 向user_order數據表插入三條記錄
Query OK, 3 rows affected (0.02 sec)
Records: 3 Duplicates: 0 Warnings: 0

MariaDB [market]> select * from user_order;  # 查詢user_order數據表的所有記錄
+------+------+----------+-------+
| o_id | u_id | username | money |
+------+------+----------+-------+
| 1 | 1 | HA | 234 |
| 2 | 2 | LB | 146 |
| 3 | 3 | HPC | 256 |
+------+------+----------+-------+
3 rows in set (0.00 sec)

MariaDB [market]> select id,name,sex,money,o_id from userprofile,user_order where id=u_id; # 聯表查詢
+----+------+-----+-------+------+
| id | name | sex | money | o_id |
+----+------+-----+-------+------+
| 1 | HA | 1 | 234 | 1 |
| 2 | LB | 2 | 146 | 2 |
| 3 | HPC | 1 | 256 | 3 |
+----+------+-----+-------+------+
3 rows in set (0.03 sec)

2.1.2 測試級聯刪除

MariaDB [market]> delete from userprofile where id=1; # 刪除user表中id為1的數據
Query OK, 1 row affected (0.01 sec)

MariaDB [market]> select id,name,sex,money,o_id from userprofile,user_order where id=u_id;
+----+------+-----+-------+------+
| id | name | sex | money | o_id |
+----+------+-----+-------+------+
| 2 | LB | 2 | 146 | 2 |
| 3 | HPC | 1 | 256 | 3 |
+----+------+-----+-------+------+
2 rows in set (0.00 sec)

MariaDB [market]> select * from user_order;   # 查看order表的數據
+------+------+----------+-------+
| o_id | u_id | username | money |
+------+------+----------+-------+
| 2 | 2 | LB | 146 |
| 3 | 3 | HPC | 256 |
+------+------+----------+-------+
3 rows in set (0.00 sec)

2.1.3 測試級聯更新

更新數據之前的狀態

MariaDB [market]> select * from userprofile;  # 查看userprofile表的數據
+----+------+-----+
| id | name | sex |
+----+------+-----+
| 2 | LB | 2 |
| 3 | HPC | 1 |
+----+------+-----+
3 rows in set (0.00 sec)

MariaDB [market]> select * from user_order;   # 查看order表的數據
+------+------+----------+-------+
| o_id | u_id | username | money |
+------+------+----------+-------+
| 2 | 2 | LB | 146 |
| 3 | 3 | HPC | 256 |
+------+------+----------+-------+
3 rows in set (0.00 sec)

更新數據

MariaDB [market]> update userprofile set id=6 where id=2; # 把userprofile數據表中id為2的用戶改為id為6
Query OK, 1 row affected (0.02 sec)
Rows matched: 1 Changed: 1 Warnings: 0

更新數據后的狀態

MariaDB [market]> select id,name,sex,money,o_id from userprofile,user_order where id=u_id; # 聯表查詢,可以看出表中已經沒有id為2的用戶了
+----+------+-----+-------+------+
| id | name | sex | money | o_id |
+----+------+-----+-------+------+
| 6 | LB | 2 | 146 | 2 |
| 3 | HPC | 1 | 256 | 3 |
+----+------+-----+-------+------+
2 rows in set (0.00 sec)

MariaDB [market]> select * from userprofile;  # 查看userprofile表的數據,id只剩下3和6
+----+------+-----+
| id | name | sex |
+----+------+-----+
| 3 | HPC | 1 |
| 6 | LB | 2 |
+----+------+-----+
2 rows in set (0.00 sec)

MariaDB [market]> select * from user_order;   # 查看user_order表的數據,u_id也改為6
+------+------+----------+-------+
| o_id | u_id | username | money |
+------+------+----------+-------+
| 2 | 6 | LB | 146 |
| 3 | 3 | HPC | 256 |
+------+------+----------+-------+
2 rows in set (0.00 sec)

2.1.4 測試數據完整性

MariaDB [market]> insert into user_order(u_id,username,money)values(5,"XJ",345); # 單獨向user_order數據表中插入數據,插入數據失敗
ERROR 1452 (23000): Cannot add or update a child row: a foreign key constraint fails (`market`.`user_order`, CONSTRAINT `user_order_ibfk_1` FOREIGN KEY (`u_id`) REFERENCES `userprofile` (`id`) ON DELETE CASCADE ON UPDATE CASCADE)

在上面的例子中,user_order表的外鍵約束,user_order表受userprofile表的約束

在user_order里面插入一條數據u_id為5用戶,在userprofile表里面根本沒有,所以插入數據失敗

先向userprofile表中插入記錄,再向user_order表中插入記錄就可以了

MariaDB [market]> insert into userprofile values(5,"XJ",1);  # 先向userprofile數據表中插入id為5的記錄,插入數據成功
Query OK, 1 row affected (0.01 sec)

MariaDB [market]> insert into user_order(u_id,username,money) values(5,"XJ",345); # 再向user_order數據表中插入數據,成功
Query OK, 1 row affected (0.00 sec)

MariaDB [market]> select * from userprofile;  # 查詢userprofile數據表中的所有記錄
+----+------+-----+
| id | name | sex |
+----+------+-----+
| 3 | HPC | 1 |
| 5 | XJ | 1 |
| 6 | LB | 2 |
+----+------+-----+
3 rows in set (0.00 sec)

MariaDB [market]> select * from user_order;   # 查詢user_order數據表中的所有記錄
+------+------+----------+-------+
| o_id | u_id | username | money |
+------+------+----------+-------+
| 2 | 6 | LB | 146 |
| 3 | 3 | HPC | 256 |
| 5 | 5 | XJ | 345 |
+------+------+----------+-------+
3 rows in set (0.01 sec)

2.2 方法二:通過alter table創建外鍵和級聯更新,級聯刪除

語法:

alter table 數據表名稱 add 
 [constraint [約束名稱] ] foreign key (外鍵字段,..) references 數據表(參照字段,...) 
 [on update cascade|set null|no action]
 [on delete cascade|set null|no action]
)

例子:

MariaDB [market]> create table user_order1(o_id int(11) auto_increment,u_id int(11) default "0",username varchar(50),money int(11),primary key(o_id),index(u_id));  # 創建user_order1數據表,創建表時不使用外鍵約束
Query OK, 0 rows affected (0.11 sec)

MariaDB [market]> show create table user_order1;  # 查看user_order1數據表的創建信息,沒有外鍵約束
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                     |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| user_order1 | CREATE TABLE `user_order1` (
 `o_id` int(11) NOT NULL AUTO_INCREMENT,
 `u_id` int(11) DEFAULT '0',
 `username` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
 `money` int(11) DEFAULT NULL,
 PRIMARY KEY (`o_id`),
 KEY `u_id` (`u_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.01 sec)

MariaDB [market]> alter table user_order1 add foreign key(u_id) references userprofile(id) on delete cascade on update cascade;  # 使用alter修改user_order1數據表,為user_order1數據表添加外鍵約束
Query OK, 0 rows affected (0.05 sec)  
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [market]> show create table user_order1;  # 查看user_order1數據表的創建信息,已經添加了外鍵約束
+-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                    |
+-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| user_order1 | CREATE TABLE `user_order1` (
 `o_id` int(11) NOT NULL AUTO_INCREMENT,
 `u_id` int(11) DEFAULT '0',
 `username` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
 `money` int(11) DEFAULT NULL,
 PRIMARY KEY (`o_id`),
 KEY `u_id` (`u_id`),
 CONSTRAINT `user_order1_ibfk_1` FOREIGN KEY (`u_id`) REFERENCES `userprofile` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

3.刪除外鍵

語法

alter table 數據表名稱 drop foreign key 約束(外鍵)名稱

例子:

MariaDB [market]> show create table user_order1;  # 查看user_order1數據表的創建信息,包含外鍵約束
+-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                                    |
+-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| user_order1 | CREATE TABLE `user_order1` (
 `o_id` int(11) NOT NULL AUTO_INCREMENT,
 `u_id` int(11) DEFAULT '0',
 `username` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
 `money` int(11) DEFAULT NULL,
 PRIMARY KEY (`o_id`),
 KEY `u_id` (`u_id`),
 CONSTRAINT `user_order1_ibfk_1` FOREIGN KEY (`u_id`) REFERENCES `userprofile` (`id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+-------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

MariaDB [market]> alter table user_order1 drop foreign key user_order1_ibfk_1;  # 為user_order1數據表刪除外鍵約束,外鍵名稱必須與從`show create table user_order1`語句中查到的相同
Query OK, 0 rows affected (0.05 sec)  
Records: 0 Duplicates: 0 Warnings: 0

MariaDB [market]> show create table user_order1;  # 查看user_order1數據表的創建信息,外鍵約束已經被刪除了
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Table | Create Table                                     |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| user_order1 | CREATE TABLE `user_order1` (
 `o_id` int(11) NOT NULL AUTO_INCREMENT,
 `u_id` int(11) DEFAULT '0',
 `username` varchar(50) COLLATE utf8_unicode_ci DEFAULT NULL,
 `money` int(11) DEFAULT NULL,
 PRIMARY KEY (`o_id`),
 KEY `u_id` (`u_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci |
+-------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)

4.使用外鍵約束的條件

要想外鍵創建成功,必須滿足以下4個條件:

1、確保參照的表和字段存在。
2、組成外鍵的字段被索引。
3、必須使用type指定存儲引擎為:innodb.
4、外鍵字段和關聯字段,數據類型必須一致。

5.使用外鍵約束需要的注意事項

1.on delete cascade  on update cascade 添加級聯刪除和更新:
2.確保參照的表userprofile中id字段存在。
3.確保組成外鍵的字段u_id被索引
4.必須使用type指定存儲引擎為:innodb。
5.外鍵字段和關聯字段,數據類型必須一致。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

您可能感興趣的文章:
  • 淺談MySQL和mariadb區別
  • centos 7安裝mysql5.5和安裝 mariadb使用的命令
  • Centos7 下mysql重新啟動MariaDB篇
  • Mac中MariaDB數據庫的安裝步驟
  • mariadb的主從復制、主主復制、半同步復制配置詳解
  • CentOS安裝和設置MariaDB的教程
  • 關于MariaDB安裝問題小記(CMake Error at)
  • 記一次mariadb數據庫無法連接
  • CentOS 7中成功安裝MariaDB的方法教程
  • MariaDB性能調優工具mytop的使用詳解

標簽:張掖 酒泉 雞西 阜陽 貴港 萍鄉 AXB 衡水

巨人網絡通訊聲明:本文標題《MariaDB數據庫的外鍵約束實例詳解》,本文關鍵詞  MariaDB,數據庫,的,外鍵,約束,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《MariaDB數據庫的外鍵約束實例詳解》相關的同類信息!
  • 本頁收集關于MariaDB數據庫的外鍵約束實例詳解的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    久久精品久久综合| 91性感美女视频| 亚洲国产精品视频| 一区二区三区中文字幕电影| 亚洲自拍另类综合| 久草精品在线观看| 成人精品国产一区二区4080| 欧美三级电影在线观看| 久久久久久亚洲综合影院红桃| 国产精品美女久久久久久久网站| 亚洲图片自拍偷拍| 成人激情动漫在线观看| 欧美一区二区精品久久911| 亚洲国产精品av| 男人操女人的视频在线观看欧美| 国产成人精品一区二区三区四区| 欧美在线观看一二区| 亚洲精品在线观| 亚洲国产成人91porn| 欧美日韩综合在线| 久久综合久久99| 亚洲黄色av一区| 国产成人欧美日韩在线电影| 欧美性受极品xxxx喷水| 国产亚洲欧洲997久久综合| 午夜伦欧美伦电影理论片| 成人高清av在线| 精品国产乱码久久久久久牛牛| 亚洲一二三四区不卡| 国产99久久久国产精品| 日韩精品资源二区在线| 洋洋成人永久网站入口| 成人免费va视频| 久久久www成人免费无遮挡大片| 亚洲不卡在线观看| 色妹子一区二区| 亚洲欧洲日产国码二区| 国产成人免费视频一区| 久久日一线二线三线suv| 奇米影视一区二区三区小说| 欧美三级一区二区| 亚洲黄色小说网站| 一本一道久久a久久精品| 国产精品―色哟哟| 国产成人综合视频| 国产午夜精品久久| 成人一道本在线| 国产精品第一页第二页第三页| 成人一道本在线| 国产精品久久久久一区| 波多野结衣在线aⅴ中文字幕不卡| 精品国产一区二区三区av性色| 欧美aa在线视频| 欧美一区二区三区四区五区 | 欧美嫩在线观看| 亚洲激情图片qvod| 在线观看国产日韩| 亚洲综合在线电影| 欧美三级电影在线观看| 天天亚洲美女在线视频| 亚洲高清在线视频| 91久久精品网| 亚洲一二三专区| 欧美日韩国产高清一区二区三区| 亚洲卡通动漫在线| 欧美亚洲动漫精品| 婷婷综合五月天| 日韩一区和二区| 麻豆精品一区二区三区| 欧美精品一区二区三区蜜臀| 国产伦精品一区二区三区免费 | 国产在线视频一区二区| 久久亚洲一区二区三区明星换脸| 韩国精品在线观看| 中文字幕+乱码+中文字幕一区| 粉嫩久久99精品久久久久久夜| 亚洲日本一区二区| 欧美三级日韩三级国产三级| 日本sm残虐另类| 国产午夜精品久久久久久久 | 成人免费在线观看入口| 欧美伊人久久大香线蕉综合69| 奇米一区二区三区av| 国产性色一区二区| 欧美午夜精品久久久久久超碰| 日韩电影在线一区| 国产精品乱码人人做人人爱| 欧美系列一区二区| 国产精品一区二区男女羞羞无遮挡| 国产精品福利av| 欧美一区二区在线免费播放 | 成人短视频下载| 亚洲国产色一区| 亚洲精品在线免费观看视频| 91在线一区二区三区| 偷拍亚洲欧洲综合| 国产精品麻豆视频| 欧美一区二区在线免费观看| 久久综合九色综合久久久精品综合| 国产高清不卡一区| 丝袜亚洲另类欧美| 国产精品欧美综合在线| 欧美精品视频www在线观看| 国产成人小视频| 日韩精品成人一区二区三区| 国产日韩欧美综合一区| 777xxx欧美| av电影在线观看一区| 另类小说一区二区三区| 尤物av一区二区| 亚洲国产精品av| 欧美tickling网站挠脚心| 91成人在线精品| 99久久久久免费精品国产 | wwwwww.欧美系列| 欧美日韩一区视频| 91一区二区三区在线观看| 国产精品正在播放| 日日夜夜免费精品| 亚洲欧美日韩国产综合在线| 亚洲国产精品黑人久久久| 日韩精品一区二区在线| 欧美疯狂做受xxxx富婆| 欧美性受xxxx黑人xyx性爽| 色综合天天在线| 成人免费高清视频在线观看| 韩国欧美一区二区| 国产在线国偷精品免费看| 秋霞成人午夜伦在线观看| 亚洲成av人片一区二区| 亚洲愉拍自拍另类高清精品| 亚洲欧洲成人精品av97| 国产精品入口麻豆原神| 欧美激情一区不卡| 日本一区免费视频| 国产亚洲精品7777| 国产精品嫩草影院av蜜臀| 国产午夜亚洲精品理论片色戒| 精品国产三级电影在线观看| 日韩精品中午字幕| 久久中文娱乐网| 国产日韩欧美制服另类| 国产精品无遮挡| 国产精品电影一区二区| 中文字幕一区在线观看| 日韩理论片在线| 亚洲一卡二卡三卡四卡五卡| 亚洲大片免费看| 免费在线视频一区| 国产在线播放一区| 不卡视频一二三| 日本乱人伦一区| 欧美日韩精品欧美日韩精品一综合| 欧美日韩夫妻久久| 精品久久国产老人久久综合| 久久精品人人做人人爽人人| 国产精品久久久久国产精品日日 | 99久久精品久久久久久清纯| 99久久免费精品高清特色大片| 日本精品免费观看高清观看| 欧美精品粉嫩高潮一区二区| 精品黑人一区二区三区久久| 亚洲国产成人自拍| 亚洲制服丝袜一区| 久久99国产精品麻豆| 91精品国产一区二区三区| 日韩一级二级三级精品视频| 国产欧美精品一区| 亚洲精品欧美综合四区| 日本成人在线不卡视频| 国产成人精品影视| 欧美日韩一区小说| 精品福利一区二区三区| 亚洲日本va午夜在线影院| 日本网站在线观看一区二区三区| 青青草国产成人av片免费| 国产成人免费高清| 欧美日韩免费观看一区二区三区 | 成人性视频免费网站| 99久久国产综合色|国产精品| 欧美日韩一区二区电影| 国产午夜亚洲精品羞羞网站| 亚洲一区二区成人在线观看| 国产麻豆视频一区| 欧美日本在线观看| 国产精品毛片a∨一区二区三区| 亚洲高清免费视频| www.亚洲精品| 欧美xxxxx裸体时装秀| 亚洲美腿欧美偷拍| 国产精品综合二区| 7777女厕盗摄久久久| 亚洲欧美国产77777| 国产乱一区二区| 欧美精品久久天天躁| 亚洲色大成网站www久久九九| 精品一区二区三区免费播放| 欧美日韩中文字幕一区| 亚洲国产精品精华液2区45| 美女脱光内衣内裤视频久久网站 |