亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > PHP > 正文

關于thinkphp5.0數據庫操作的案例

2020-03-22 19:47:16
字體:
來源:轉載
供稿:網友
一、支持數據庫的類型

Mysql,SqlServer,pgSQL,Sqlite等數據庫的支持

二、如何連接數據庫1.配置文件定義

a.配置文件目錄
項目/application/database.php
b.如何配置

return [ // 數據庫類型 type = mysql , // 服務器地址 hostname = 127.0.0.1 , // 數據庫名 database = , // 用戶名 username = root , // 密碼 password = , // 端口 hostport = 3306 ,];

c.如何使用

// 實例化系統數據庫類$DB=new Db;// 查詢數據$data=$DB::table( user )- select();//使用sql語句$data=$DB::query( select * from user 
2.方法配置

1.使用數組

//Db類中的connect方法:數據庫初始化 并取得數據庫類實例 $DB=Db::connect([ // 數據庫類型 type = mysql , // 服務器地址 hostname = 127.0.0.1 , // 數據庫名 database = edu , // 用戶名 username = root , // 密碼 password = , // 端口 hostport = 3306 ,]);

2.使用字符串

//Db類中的connect方法:數據庫初始化 并取得數據庫類實例$DB=Db::connect( mysql://root:@127.0.0.1:3306/edu#utf8 

3.如何使用

$data=$DB- table( user )- select();
3.模型類定義

1.創建數據模型

a.命令行創建

b.手動創建
1.打開數據模型目錄(項目/application/index/model)
2.在目錄文件下新建文件User.php
3.在文件中書寫代碼

 ?php // 聲明命名空間(位置) namespace app/index/model; // 聲明控制器 use think/Model; html' target='_blank'>class User extends Model }? 

2.如何設置

 ?php // 聲明命名空間(位置) namespace app/index/model; // 聲明控制器 use think/Model; class User extends Model // 使用數組連接數據庫 protected $connection=[ // 數據庫類型 type = mysql , // 服務器地址 hostname = 127.0.0.1 , // 數據庫名 database = edu , // 用戶名 username = root , // 密碼 password = , // 端口 hostport = 3306 , ]; //使用字符串 protected $connection= mysql://root:@127.0.0.1:3306/edu#utf8  }? 

3.如何控制器中使用

// 使用模型定義連接public function data2(){ echo 使用模型連接數據庫 $user=new /app/index/model/User(); dump($user::all());}
三、查詢數據1.tp方法
// 實例化系統數據庫類$DB=new Db;// 查詢數據$data=$DB::table( user )- select();
2.使用sql語句
//使用sql語句$data=$DB::query( select * from user 
四、數據庫的基本使用

支持query(查詢操作)和execute(寫入操作)

0.獲取指定sql語句
// 獲取執行的sql語句echo Db::getLastSql();
1.查詢
$data=Db::query( select * from user $data=Db::query( select * from user where id =? and id =? ,[5,8]);
2.增加
$data=Db::execute( insert into user value(null, user1 , 123 , 18 ) $data=Db::execute( insert into user value(null,?,?,?) ,[ user2 , 123 , 20 ] $data=Db::execute( insert into user value(null,:name,:pass,:age) ,[ name = user3 , pass = 123 , age = 20 
3.刪除
$data=Db::execute( delete from user where id=10 $data=Db::execute( delete from user where id ? ,[15]);$data=Db::execute( delete from user where id :id ,[ id = 10]);
4.修改
$data=Db::execute( update user set age= 20 where id=? ,[15]);
五、TP數據處理1.查詢操作
1.table方法查詢數據 // 查詢所有數據 $data=Db::table( user )- select(); // 查詢一條數據 $data=Db::table( user )- find();2.name方法查詢數據 //name方法會自動添加上配置文件中的表前綴,與配置文件有關 $data=Db::name( user )- select(); $data=Db::name( user )- find();3.助手函數 $data=db( user )- select(); $data=db( user )- find();4.where條件匹配 $data=Db::table( user )- where( id , ,5)- select(); $data=Db::table( user )- where( id , ,11)- where( id , ,8)- select(); $data=Db::table( user )- where( name , like , %tian% )- select(); $data=Db::table( user )- where( name , wanlisha )- where( pass , wanlisha )- select();5.whereor條件查詢 $data=Db::table( user )- where( id , = , 21 )- whereOr( id , = ,5)- select(); $data=Db::table( user )- where( name , like , %tian% )- whereOr( name , like , %wanli% )- select(); $data=Db::table( user )- where( name|pass , like , %tian% )- select();//6.limit截取數據 $data=Db::table( user )- limit(2)- select(); $data=Db::table( user )- limit(0,2)- select();7.order實現排序 $data=Db::table( user )- order( id )- select(); $data=Db::table( user )- order( id , desc )- select();8.field 設置查詢字段 //設置查詢字段 $data=Db::table( user )- field( name,pass )- select(); $data=Db::table( user )- field([ name , pass ])- select(); // 給name起別名 $data=Db::table( user )- field( name uname,pass )- select(); $data=Db::table( user )- field([ name = uname , pass ])- select(); // sql的系統函數 $data=Db::table( user )- field( count(*) as tot )- select(); $data=Db::table( user )- field([ count(*) = tot ])- select(); //排除字段 $data=Db::table( user )- field( name,pass ,true)- select(); $data=Db::table( user )- field([ name , pass ],true)- select();9.Page實現分頁效果 $data=Db::table( user )- page(3,5)- select(); $data=Db::table( user )- page( 3,5 )- select();10.分組聚合 $data=Db::table( user )- field( pass,count(*) tot )- group( pass )- select();11.having過濾 // 只能結合分組使用 $data=Db::table( user )- field( pass,count(*) tot )- having( tot =4 )- group( pass )- select();12.多表查詢 // 內斂實現數據庫連接 $data=Db::query( select product.*,fenlei.name tname from fenlei,product where product.cid=fenlei.id  $data=Db::table( product )- field( product.*,fenlei.name tname )- join( fenlei , product.cid=fenlei.id )- select(); // 右鏈接 $data=Db::table( product )- field( product.*,fenlei.name tname )- join( fenlei , product.cid=fenlei.id , right )- select(); // 左鏈接 $data=Db::table( product )- field( product.*,fenlei.name tname )- join( fenlei , product.cid=fenlei.id , left )- select();13.別名使用-給表起別名 $data=Db::table( product )- alias( p )- field( p.*,f.name fname )- join( fenlei f , p.cid=f.id , left )- select();14.union集合 $data=Db::field( name )- table( user )- union( select name from product )- select();15.參數綁定bind為了防止sql注入 //自動輕微防止sql注入 $data=Db::table( user )- where( id ,$id)- delete();  //不防注入 建議不要使用原生的sql語句 $data=Db::execute( delete from user where id=$id  //防注入 $data=Db::table( user )- where( id , :id )- bind([ id = [$id,/PDO::PARAM_INT]])- delete();16.統計數據 $data=Db::table( user )- max( age  $data=Db::table( user )- min( age  $data=Db::table( user )- avg( age  $data=Db::table( user )- sum( age  $data=Db::table( user )- count();17.視圖查詢(多表查詢) $data=Db::view( goods , id,name,price )- view( type , name , type.id=goods.cid )- select(); // 左連接 $data=Db::view( goods , id,name,price )- view( type , name , type.id=goods.cid , right )- select(); // 右連接 $data=Db::view( goods , id,name,price )- view( type , name , type.id=goods.cid , left )- select();
2.插入操作
1.插入單條數據 // 數組中的字段名必須和數據庫中字段名一致 $data=[ name = 張三 , pass = 123 , age = 18 // 返回值:影響行數 $code=Db::table( user )- insert($data); $code=db( user )- insert($data);2.插入多條數據 $data=[ name = 張三1 , pass = 123 , age = 18 name = 張三2 , pass = 123 , age = 18 //返回值:影響行數  $code=Db::table( user )- insertAll($data); $code=db( user )- insertAll($data);3.獲取最后一次插入的id $data=[ name = 張三1 , pass = 123 , age = 18 $code=Db::table( user )- insertGetId($data);  $code=db( user )- insertGetId($data);
3.更新數據
1.修改數據 $code=Db::table( user )- where( id , ,5)- update([ age = 111, pass = 111  $code=Db::table( user )- update([ id = 5, age = 60]); code=Db::table( user )- where( id ,5)- setField( age ,111);2.設置自增 $code=Db::table( user )- where( id ,6)- setInc( age 3.設置自減 $code=Db::table( user )- where( id ,7)- setDec( age  $code=Db::table( user )- where( id ,5)- setDec( age ,3);
4.刪除數據
1.刪除一條數據 $code=Db::table( user )- where( id ,6)- delete(); $code=Db::table( user )- delete(7);2.刪除多條數據 $code=Db::table( user )- where( id in(1,2) )- delete(); $code=Db::table( user )- delete([2,3]);3.刪除區間數據 $code=Db::table( user )- where( id 0 and id 5 )- delete();
六、事務機制1.mysql事務

要求數據的引擎必須是InnoDB
重點:對要操作的數據表執行語句:ALTER TABLE user ENGINE=INNODB;

2.使用

1. 自動控制事務

Db::transaction(function(){ // 刪除一條數據 Db::table( user )- delete(11); Db::table( user )- deletes(40);});

2. 手動控制事務

// 手動控制事務 // 開啟事務 Db::startTrans(); try{ // 刪除數據 $a=Db::table( user )- delete(11); // 判斷是否刪除成功 if(!$a){ throw new /Exception( 刪除11沒有成功  } // 刪除不存在的數據 $b=Db::table( user )- delete(12); if(!$b){ throw new /Exception( 刪除12沒有成功  } // 執行提交操作 Db::commit();`這里寫代碼片` echo 成功  }catch(/Exception $e){ // 回滾事務 echo 失敗  Db::rollback(); dump($e- getmessage()); }
 // 開啟事務 Db::startTrans(); // 刪除數據 $a=Db::table( user )- delete(1); $b=Db::table( user )- delete(2); // 判斷條件 if($a $b){ // 提交事務 Db::commit(); }else{ Db::rollback(); }
一、支持數據庫的類型

Mysql,SqlServer,pgSQL,Sqlite等數據庫的支持

二、如何連接數據庫1.配置文件定義

a.配置文件目錄
項目/application/database.php
b.如何配置

return [ // 數據庫類型 type = mysql , // 服務器地址 hostname = 127.0.0.1 , // 數據庫名 database = , // 用戶名 username = root , // 密碼 password = , // 端口 hostport = 3306 ,];

c.如何使用

// 實例化系統數據庫類$DB=new Db;// 查詢數據$data=$DB::table( user )- select();//使用sql語句$data=$DB::query( select * from user 
2.方法配置

1.使用數組

//Db類中的connect方法:數據庫初始化 并取得數據庫類實例 $DB=Db::connect([ // 數據庫類型 type = mysql , // 服務器地址 hostname = 127.0.0.1 , // 數據庫名 database = edu , // 用戶名 username = root , // 密碼 password = , // 端口 hostport = 3306 ,]);

2.使用字符串

//Db類中的connect方法:數據庫初始化 并取得數據庫類實例$DB=Db::connect( mysql://root:@127.0.0.1:3306/edu#utf8 

3.如何使用

$data=$DB- table( user )- select();
3.模型類定義

1.創建數據模型

a.命令行創建

b.手動創建
1.打開數據模型目錄(項目/application/index/model)
2.在目錄文件下新建文件User.php
3.在文件中書寫代碼

 ?php // 聲明命名空間(位置) namespace app/index/model; // 聲明控制器 use think/Model; class User extends Model }? 

2.如何設置

 ?php // 聲明命名空間(位置) namespace app/index/model; // 聲明控制器 use think/Model; class User extends Model // 使用數組連接數據庫 protected $connection=[ // 數據庫類型 type = mysql , // 服務器地址 hostname = 127.0.0.1 , // 數據庫名 database = edu , // 用戶名 username = root , // 密碼 password = , // 端口 hostport = 3306 , ]; //使用字符串 protected $connection= mysql://root:@127.0.0.1:3306/edu#utf8  }? 

3.如何控制器中使用

// 使用模型定義連接public function data2(){ echo 使用模型連接數據庫 $user=new /app/index/model/User(); dump($user::all());}
三、查詢數據1.tp方法
// 實例化系統數據庫類$DB=new Db;// 查詢數據$data=$DB::table( user )- select();
2.使用sql語句
//使用sql語句$data=$DB::query( select * from user 
四、數據庫的基本使用

支持query(查詢操作)和execute(寫入操作)

0.獲取指定sql語句
// 獲取執行的sql語句echo Db::getLastSql();
1.查詢
$data=Db::query( select * from user $data=Db::query( select * from user where id =? and id =? ,[5,8]);
2.增加
$data=Db::execute( insert into user value(null, user1 , 123 , 18 ) $data=Db::execute( insert into user value(null,?,?,?) ,[ user2 , 123 , 20 ] $data=Db::execute( insert into user value(null,:name,:pass,:age) ,[ name = user3 , pass = 123 , age = 20 
3.刪除
$data=Db::execute( delete from user where id=10 $data=Db::execute( delete from user where id ? ,[15]);$data=Db::execute( delete from user where id :id ,[ id = 10]);
4.修改
$data=Db::execute( update user set age= 20 where id=? ,[15]);
五、TP數據處理1.查詢操作
1.table方法查詢數據 // 查詢所有數據 $data=Db::table( user )- select(); // 查詢一條數據 $data=Db::table( user )- find();2.name方法查詢數據 //name方法會自動添加上配置文件中的表前綴,與配置文件有關 $data=Db::name( user )- select(); $data=Db::name( user )- find();3.助手函數 $data=db( user )- select(); $data=db( user )- find();4.where條件匹配 $data=Db::table( user )- where( id , ,5)- select(); $data=Db::table( user )- where( id , ,11)- where( id , ,8)- select(); $data=Db::table( user )- where( name , like , %tian% )- select(); $data=Db::table( user )- where( name , wanlisha )- where( pass , wanlisha )- select();5.whereor條件查詢 $data=Db::table( user )- where( id , = , 21 )- whereOr( id , = ,5)- select(); $data=Db::table( user )- where( name , like , %tian% )- whereOr( name , like , %wanli% )- select(); $data=Db::table( user )- where( name|pass , like , %tian% )- select();//6.limit截取數據 $data=Db::table( user )- limit(2)- select(); $data=Db::table( user )- limit(0,2)- select();7.order實現排序 $data=Db::table( user )- order( id )- select(); $data=Db::table( user )- order( id , desc )- select();8.field 設置查詢字段 //設置查詢字段 $data=Db::table( user )- field( name,pass )- select(); $data=Db::table( user )- field([ name , pass ])- select(); // 給name起別名 $data=Db::table( user )- field( name uname,pass )- select(); $data=Db::table( user )- field([ name = uname , pass ])- select(); // sql的系統函數 $data=Db::table( user )- field( count(*) as tot )- select(); $data=Db::table( user )- field([ count(*) = tot ])- select(); //排除字段 $data=Db::table( user )- field( name,pass ,true)- select(); $data=Db::table( user )- field([ name , pass ],true)- select();9.Page實現分頁效果 $data=Db::table( user )- page(3,5)- select(); $data=Db::table( user )- page( 3,5 )- select();10.分組聚合 $data=Db::table( user )- field( pass,count(*) tot )- group( pass )- select();11.having過濾 // 只能結合分組使用 $data=Db::table( user )- field( pass,count(*) tot )- having( tot =4 )- group( pass )- select();12.多表查詢 // 內斂實現數據庫連接 $data=Db::query( select product.*,fenlei.name tname from fenlei,product where product.cid=fenlei.id  $data=Db::table( product )- field( product.*,fenlei.name tname )- join( fenlei , product.cid=fenlei.id )- select(); // 右鏈接 $data=Db::table( product )- field( product.*,fenlei.name tname )- join( fenlei , product.cid=fenlei.id , right )- select(); // 左鏈接 $data=Db::table( product )- field( product.*,fenlei.name tname )- join( fenlei , product.cid=fenlei.id , left )- select();13.別名使用-給表起別名 $data=Db::table( product )- alias( p )- field( p.*,f.name fname )- join( fenlei f , p.cid=f.id , left )- select();14.union集合 $data=Db::field( name )- table( user )- union( select name from product )- select();15.參數綁定bind為了防止sql注入 //自動輕微防止sql注入 $data=Db::table( user )- where( id ,$id)- delete();  //不防注入 建議不要使用原生的sql語句 $data=Db::execute( delete from user where id=$id  //防注入 $data=Db::table( user )- where( id , :id )- bind([ id = [$id,/PDO::PARAM_INT]])- delete();16.統計數據 $data=Db::table( user )- max( age  $data=Db::table( user )- min( age  $data=Db::table( user )- avg( age  $data=Db::table( user )- sum( age  $data=Db::table( user )- count();17.視圖查詢(多表查詢) $data=Db::view( goods , id,name,price )- view( type , name , type.id=goods.cid )- select(); // 左連接 $data=Db::view( goods , id,name,price )- view( type , name , type.id=goods.cid , right )- select(); // 右連接 $data=Db::view( goods , id,name,price )- view( type , name , type.id=goods.cid , left )- select();
2.插入操作
1.插入單條數據 // 數組中的字段名必須和數據庫中字段名一致 $data=[ name = 張三 , pass = 123 , age = 18 // 返回值:影響行數 $code=Db::table( user )- insert($data); $code=db( user )- insert($data);2.插入多條數據 $data=[ name = 張三1 , pass = 123 , age = 18 name = 張三2 , pass = 123 , age = 18 //返回值:影響行數  $code=Db::table( user )- insertAll($data); $code=db( user )- insertAll($data);3.獲取最后一次插入的id $data=[ name = 張三1 , pass = 123 , age = 18 $code=Db::table( user )- insertGetId($data);  $code=db( user )- insertGetId($data);
3.更新數據
1.修改數據 $code=Db::table( user )- where( id , ,5)- update([ age = 111, pass = 111  $code=Db::table( user )- update([ id = 5, age = 60]); code=Db::table( user )- where( id ,5)- setField( age ,111);2.設置自增 $code=Db::table( user )- where( id ,6)- setInc( age 3.設置自減 $code=Db::table( user )- where( id ,7)- setDec( age  $code=Db::table( user )- where( id ,5)- setDec( age ,3);
4.刪除數據
1.刪除一條數據 $code=Db::table( user )- where( id ,6)- delete(); $code=Db::table( user )- delete(7);2.刪除多條數據 $code=Db::table( user )- where( id in(1,2) )- delete(); $code=Db::table( user )- delete([2,3]);3.刪除區間數據 $code=Db::table( user )- where( id 0 and id 5 )- delete();
六、事務機制1.mysql事務

要求數據的引擎必須是InnoDB
重點:對要操作的數據表執行語句:ALTER TABLE user ENGINE=INNODB;

2.使用

1. 自動控制事務

Db::transaction(function(){ // 刪除一條數據 Db::table( user )- delete(11); Db::table( user )- deletes(40);});

2. 手動控制事務

// 手動控制事務 // 開啟事務 Db::startTrans(); try{ // 刪除數據 $a=Db::table( user )- delete(11); // 判斷是否刪除成功 if(!$a){ throw new /Exception( 刪除11沒有成功  } // 刪除不存在的數據 $b=Db::table( user )- delete(12); if(!$b){ throw new /Exception( 刪除12沒有成功  } // 執行提交操作 Db::commit();`這里寫代碼片` echo 成功  }catch(/Exception $e){ // 回滾事務 echo 失敗  Db::rollback(); dump($e- getmessage()); } // 開啟事務 Db::startTrans(); // 刪除數據 $a=Db::table( user )- delete(1); $b=Db::table( user )- delete(2); // 判斷條件 if($a $b){ // 提交事務 Db::commit(); }else{ Db::rollback(); }

本文講解了關于thinkphp5.0數據庫操作的案例,更多相關內容請關注php 。

相關推薦:

列舉ThinkPHP5與ThinkPHP3的一些異同點

創建一個最簡單的ThinkPhp項目工程

關于ThinkPHP的增、刪、改、查 的一些總結

以上就是關于thinkphp5.0數據庫操作的案例的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
97超级碰碰人国产在线观看| 久久精品中文字幕一区| 国产精品久久久久久av福利| 亚洲日韩第一页| 久久伊人色综合| 成人福利在线观看| 国产精品永久免费在线| 国产精品欧美一区二区三区奶水| 国产精品白嫩美女在线观看| 韩国一区二区电影| 人妖精品videosex性欧美| 亚洲视频在线观看视频| 欧美乱大交xxxxx| 欧美日韩福利电影| 欧美性猛交xxxx乱大交| 日韩视频在线观看免费| 欧美三级欧美成人高清www| 精品视频9999| 日韩精品免费综合视频在线播放| 欧美第一黄网免费网站| 97成人超碰免| 欧美日韩国产精品| 97精品视频在线| 国产一区二区色| 亚洲精品videossex少妇| 亚洲高清久久久久久| 亚洲一区美女视频在线观看免费| 国产亚洲精品美女久久久久| 亚洲电影av在线| 日韩hd视频在线观看| 国产精品久久久久aaaa九色| 国产精品爱久久久久久久| 亚洲精品国偷自产在线99热| 日韩免费看的电影电视剧大全| 国产精品久久久亚洲| 97视频在线看| 国产精品无av码在线观看| 日韩中文字幕视频| 久久久av一区| 性欧美长视频免费观看不卡| 亚洲国产日韩一区| 亚洲精品成人网| 欧美成人午夜免费视在线看片| 国产精品一二区| 欧美激情亚洲综合一区| 亚洲国产精品专区久久| 91精品视频在线免费观看| 欧美xxxx做受欧美| 91麻豆桃色免费看| 国产精品国语对白| 久久久久久久国产| 久久综合国产精品台湾中文娱乐网| 国产亚洲福利一区| 国产精品一区二区女厕厕| 成人精品视频久久久久| 大胆欧美人体视频| 国产精品99久久久久久www| 一区二区三区日韩在线| 国产精品久久久久7777婷婷| 欧美激情成人在线视频| 欧美日韩国产成人| 日韩免费电影在线观看| 久久成人精品一区二区三区| 国产日韩精品入口| 欧美性理论片在线观看片免费| 亚洲精品久久久一区二区三区| 亚洲午夜激情免费视频| 国产精品久久久久999| 国产成人在线一区二区| 久久精品国产99国产精品澳门| 亚洲日本成人女熟在线观看| 91大神福利视频在线| 欧美性xxxx在线播放| 日本在线观看天堂男亚洲| 欧美日韩一二三四五区| 日韩成人在线播放| 亚洲欧美三级伦理| 另类天堂视频在线观看| 久久亚洲精品一区二区| 色综合老司机第九色激情| 中文字幕久精品免费视频| 成人国产在线视频| 亚洲欧美中文在线视频| 最近2019年日本中文免费字幕| 国产成人一区二区在线| 日韩精品有码在线观看| 国产精品极品尤物在线观看| 欧美日韩高清区| 国产精品18久久久久久麻辣| 亚洲美女性视频| 亚洲成人久久久| 国产成人aa精品一区在线播放| 国产成人精品一区二区| 668精品在线视频| 亚洲一区二区三区乱码aⅴ蜜桃女| www.日韩av.com| 97av在线视频免费播放| 欧美日韩午夜视频在线观看| 91啪国产在线| 国产成人精品优优av| 亚洲91精品在线观看| 国语自产精品视频在线看一大j8| 亚洲欧美国产日韩中文字幕| 91社影院在线观看| 日韩欧美国产高清91| 日韩在线视频播放| 久久久久久香蕉网| 亚洲人成在线观看| 亚洲片国产一区一级在线观看| 最新亚洲国产精品| 国产91成人video| 欧美精品少妇videofree| 日韩亚洲欧美中文高清在线| 欧美裸体xxxx极品少妇软件| 欧美大肥婆大肥bbbbb| 国产欧美日韩中文| 日韩在线观看免费高清完整版| 国产欧美精品在线播放| 91av在线播放| 大胆人体色综合| 亚洲成人动漫在线播放| 国产精品久久久久久搜索| 欧美精品在线免费| 伊人一区二区三区久久精品| 欧美激情网站在线观看| 麻豆乱码国产一区二区三区| 国产精品网红福利| 秋霞午夜一区二区| 国产婷婷97碰碰久久人人蜜臀| 国产性色av一区二区| 成人黄色大片在线免费观看| 日韩av一区二区在线观看| 欧美日韩国产精品一区二区不卡中文| 不卡av在线播放| 欧美国产日韩在线| 色综合久综合久久综合久鬼88| 久久久久一本一区二区青青蜜月| 国产欧美欧洲在线观看| 久久综合色影院| 中文字幕亚洲精品| 国产午夜精品免费一区二区三区| 亚洲国产日韩欧美综合久久| 国产精品美女免费看| 久久精品国产69国产精品亚洲| 国产精品白嫩美女在线观看| 这里只有精品视频在线| 欧美日韩亚洲精品一区二区三区| 日韩亚洲欧美中文高清在线| 国产精选久久久久久| 欧美成人免费一级人片100| 夜夜嗨av色一区二区不卡| 91精品国产高清久久久久久| 九九久久精品一区| 日韩av不卡电影| 国产亚洲精品美女久久久| 久久综合国产精品台湾中文娱乐网| 久久久成人的性感天堂| 日韩av免费看| 伊人亚洲福利一区二区三区| 久久男人的天堂| 国产精品自拍小视频| 国产视频精品免费播放| 国产精品偷伦视频免费观看国产| 久久久之久亚州精品露出|