亚洲综合原千岁中文字幕_国产精品99久久久久久久vr_无码人妻aⅴ一区二区三区浪潮_成人h动漫精品一区二区三

主頁 > 知識庫 > powershell玩轉(zhuǎn)sqlite數(shù)據(jù)庫詳細介紹

powershell玩轉(zhuǎn)sqlite數(shù)據(jù)庫詳細介紹

熱門標簽:湖州電銷防封卡 安徽400電話辦理 什么渠道可以找外呼系統(tǒng)客戶 使用電話機器人電銷是否違法 金融電銷公司怎么辦理外呼系統(tǒng) 雷霆電話機器人電話 信陽話務(wù)外呼系統(tǒng)怎么收費 真人和電話機器人對話 電話智能外呼系統(tǒng)誠信合作

腳本經(jīng)常需要處理文本,有時候是行列整齊文本。那么powershell腳本處理行列文本有幾種方法呢?一種是excel,另外的一些是?access?sqlite?

sqlite是一個很小巧的,很方便嵌入到腳本語言中的,關(guān)系型數(shù)據(jù)庫。它給powershell提供了一個免費的,處理行列整齊數(shù)據(jù),存儲數(shù)據(jù),統(tǒng)計數(shù)據(jù)的極品神器。
只要你學會了它,上天入地皆可去得。而且以后學sql server,mysql,都類似,沒有難度。

帶著引號搜本文關(guān)鍵字: "^_^上天入地皆可去^_^"
發(fā)文初衷:世界上幾乎沒有講powershell調(diào)用sqlite的帖子。

初稿,會更新。有錯誤歡迎指正,謝謝。

------------------【sqlite 字段類型】------------------

sqlite只有5種數(shù)據(jù)類型,用于存儲。
數(shù)據(jù)類型 占用字節(jié) 描述
NULL 
TEXT ? 使用數(shù)據(jù)庫編碼(UTF-8,UTF-16BE或者UTF-16LE)存放
INTEGER 根據(jù)值的大小以1,2,3,4,6或8字節(jié)存放 值是有符號整形
REAL 以8字節(jié)IEEE浮點數(shù)存放 
BLOB 最多 1,000,000,000 字節(jié) 只是一個數(shù)據(jù)塊,完全按照輸入存放(即沒有準換)存放。

使用時會將【內(nèi)存數(shù)據(jù)類型】和【存儲數(shù)據(jù)類型】之間進行轉(zhuǎn)換。
如將布爾值,轉(zhuǎn)換成INTEEGER存儲。具體參見手冊:

http://www.sqlite.org/datatype3.html

沒有日期型,沒有布爾型,這一點要注意。

------------------【應(yīng)用場景,重要!】------------------

powershell 傳教士 原創(chuàng)文章 始作于 2016-01-01 元旦, 改 允許轉(zhuǎn)載,但必須保留名字和出處,否則追究法律責任

下為個人整理的應(yīng)用場合,如有不妥,請斧正。

1 存儲數(shù)據(jù)。中量數(shù)據(jù)。
這個中量數(shù)據(jù)是指,由于sqlite表不支持分區(qū),所以應(yīng)該在一億條以下,或者更少。
excel表存儲數(shù)據(jù)有個行數(shù)(記錄條數(shù))限制,104萬左右。比如我有110萬數(shù)據(jù),只有一列,要統(tǒng)計列最大值。這時用excel就不方便了。
excel中每單元格最大存儲32k字節(jié),access2016中,每個text字段的容量存儲為64k字節(jié),行數(shù)倒是夠用。

2 各種數(shù)據(jù)統(tǒng)計。
3 由于sqlite支持純內(nèi)存數(shù)據(jù)庫,把所有庫放在內(nèi)存中。可以結(jié)合上述兩種需求。即從大庫查詢(或?qū)С觯┎糠謹?shù)據(jù),在內(nèi)存中進行統(tǒng)計。
4 缺點是:數(shù)據(jù)展示不好。不像excel、access那樣(對業(yè)務(wù)人員)有表,圖。
5 sqlite是關(guān)系型數(shù)據(jù)庫,join,group by,order by這些基本功能和mysql,sql server比不遜色。單線程性能也很好。另外單機,綠色,軟件1M以下,支持數(shù)據(jù)量極大,比access強。

------------------【圖形管理工具】------------------

英文:
SQLiteStudio http://sqlitestudio.pl/
SQLiteManager http://www.sqlabs.com/
SQLite Expert http://www.sqliteexpert.com/
SQLite Developer http://www.sqlitedeveloper.com/
SQLiteSpy http://www.yunqa.de/delphi/doku.php/products/sqlitespy/index
RazorSQL http://www.razorsql.com/

中文:
SQLite Administrator http://sqliteadmin.orbmu2k.de/ 打不開3.x版本數(shù)據(jù)庫
navicat for sqlite https://www.jb51.net/database/132499.html推薦
Database.NET http://fishcodelib.com/database.htm 推薦

------------------【下載安裝】------------------
ps調(diào)用sqlite的兩種方法。這里我們主要介紹第二種
1 https://psqlite.codeplex.com/
2 https://github.com/RamblingCookieMonster/PSSQLite
上述2種,都支持支持winxp,powershell2.0,及以上。

2.1 下載:
https://github.com/RamblingCookieMonster/PSSQLite/archive/master.zip

腳本之家下載:PSSQLite-master-jb51.zip

2.2 建立【C:\Users\你的用戶名\Documents\WindowsPowerShell\Modules】目錄,并解壓:
把 PSSQLite-master\PSSQLite 這個目錄復制到,你的模塊目錄中。
即modules目錄中,含有PSSQLite這個目錄。

2.3 查看模塊中的所有命令:
Import-Module pssqlite
get-command * -module pssqlite

返回
CommandType Name Version Source
----------- ---- ------- ------
Function Invoke-SQLiteBulkCopy 1.0.1 pssqlite
Function Invoke-SqliteQuery 1.0.1 pssqlite
Function New-SQLiteConnection 1.0.1 pssqlite
Function Out-DataTable 1.0.1 pssqlite

2.4 一鍵安裝命令:
#一鍵安裝命令依賴.net 4.5 及以上。powershell 3.0 及以上。如果不滿足條件,請用手動安裝方法。
mkdir "$env:USERPROFILE\Documents\WindowsPowerShell\Modules"
Invoke-WebRequest https://github.com/RamblingCookieMonster/PSSQLite/archive/master.zip -OutFile .\master.zip
add-Type -AssemblyName 'System.IO.Compression.Filesystem'
[System.IO.Compression.ZipFile]::ExtractToDirectory("$pwd\master.zip","$pwd")
Copy-Item -Recurse PSSQLite-master\PSSQLite "$env:USERPROFILE\Documents\WindowsPowerShell\Modules"
Import-Module pssqlite
get-command * -module pssqlite

------------------【命令幫助】------------------

Invoke-SqliteQuery -DataSource $庫文件名 -query $查詢字符串 -as 輸出格式(PSObject,DataRow,DataTable,DataSet,SingleValue)


$內(nèi)存庫 = New-SQLiteConnection -DataSource :MEMORY:
Invoke-SqliteQuery -SQLiteConnection $內(nèi)存庫 -Query "CREATE TABLE OrdersToNames (OrderID INT PRIMARY KEY, fullname TEXT);" #建表語句
Invoke-SqliteQuery -SQLiteConnection $內(nèi)存庫 -Query "INSERT INTO OrdersToNames (OrderID, fullname) VALUES (1,'Cookie Monster');" #插入語句
Invoke-SqliteQuery -SQLiteConnection $內(nèi)存庫 -Query "SELECT xxx FROM yyy WHERE mmm=nnn;" #你想要的統(tǒng)計語句

問:csv如何入庫?
答:
最好用圖形工具搞,也可以用下列類似命令。
$dt1 = get-process | Out-DataTable
Invoke-SQLiteBulkCopy -DataTable $st1 -DataSource $DataSource -Table 表名
具體參見例子2

------------------【powershell操作sqlite經(jīng)驗】------------------
1 不外乎查詢出行,查詢出列, 或查詢出表,然后foreach。
2 不外乎去重,合并結(jié)果,統(tǒng)計最大,列中數(shù)字合計。


問:乍開始我不熟悉sql語句咋辦?
答:
用拐棍!完全使用圖形程序(找傳教士要navicat for sqlite)來建表,導入數(shù)據(jù),在圖形軟件中運行sql。

問:現(xiàn)在我已經(jīng)會用【常用sql語句】+【圖形程序】來處理數(shù)據(jù)了。為啥還要用腳本呢?
答:
圖形程序畢竟只是根拐杖。你要處理的數(shù)據(jù)有可能要先取到一行,(比如用"_"先拆分,分成n列)預先用ps處理后再入庫。
庫里輸出的行列,也很容易(用Out-GridView進行展示等。)所以說還是要ps+sqlite共同處理的。

---------------【根據(jù)官網(wǎng)手冊,增減的sql教程】----------------
sqlite官網(wǎng),手冊位置:

http://www.sqlite.org/lang.html


問:什么是(關(guān)系型)數(shù)據(jù)庫索引,索引有什么好處壞處?
答:
索引是把無序的每條數(shù)據(jù),添加了一個從小到大的順序,變成了有序的數(shù)據(jù)。
每個字段都可以添加一個索引。或者n個字段公用一個索引。
索引加速了查詢速度,降低了插入速度。

問:如何快速插入數(shù)據(jù)?
答:
1 較少并發(fā)寫入,最好只有一個線程在讀寫。
2 盡量減少索引。
3 使用事務(wù)。事務(wù)是由類似【START TRANSACTION】,【COMMIT】sql關(guān)鍵字包含的命令。
事務(wù)的作用是,在所有數(shù)據(jù)插入后,即【COMMIT】后,才一次性修改所有索引,而不是插入一條,修改一次索引。
4 使用.net連接器封裝的事務(wù)。即類似sql bulkcopy 之類的方法。

問:事務(wù)相關(guān)的sql語句是?
答:
BEGIN TRANSACTION; 事務(wù)開始
COMMIT TRANSACTION; 顯示事務(wù)被提交,數(shù)據(jù)表中的數(shù)據(jù)也發(fā)生了變化。
ROLLBACK TRANSACTION; 回滾

問:為什么傳教士也很愛sqlite?
答:
PRAGMA encoding; # 這個命令將返回庫編碼默認值,utf-8
用 中文表名,字段名毫無問題!!!

問:打開庫文件名后,列出所有《庫名》的sql語句是?
答:
PRAGMA database_list;

問:打開sqlite庫文件后,默認的數(shù)據(jù)庫名是?
答:
main

問:列出所有表名的sql語句是?
答:
SELECT name FROM sqlite_master WHERE type='table' order by name;

問:測試表是否存在的sql語句是?
答:
SELECT name FROM sqlite_master WHERE name='表名' ;

問:列出某個表的所有索引,要用的sql語句是?
答:
PRAGMA index_list(表名);

問:建立表的sql語句是?
答:
CREATE TABLE IF NOT EXISTS '表名' ('自增' INTEGER PRIMARY KEY AUTOINCREMENT, '字段名2' REAL)
CREATE TABLE IF NOT EXISTS '表名' ('字段名1' INTEGER AUTOINCREMENT, '字段名2' REAL, '字段名3' TEXT, '字段名4' BLOB,PRIMARY KEY ('字段名1'))
CREATE TEMP TABLE #建臨時表
PRIMARY KEY #主鍵
AUTOINCREMENT #自增

問:建立,刪除索引的sql語句是?
答:
CREATE INDEX IF NOT EXISTS 索引名 ON 表名(字段名)
CREATE INDEX IF NOT EXISTS 索引名 ON 表名(字段名 ASC,字段名2 DESC)
CREATE UNIQUE INDEX IF NOT EXISTS 索引名 ON 表名(字段名 DESC)#唯一索引

刪除索引:
DROP INDEX IF EXISTS 索引名

傳教士問:
我搜遍了全世界,包括官方,也搞不清楚為啥不是DROP INDEX IF EXISTS 索引名 on 表名?而是DROP INDEX IF EXISTS 數(shù)據(jù)庫名.索引名
一個庫里,可以有多個表啊,請問誰能答?

問:什么是sqlite數(shù)據(jù)清理?有什么好處?
答:
刪除一條記錄時只是打上刪除標記。數(shù)據(jù)清理是徹底刪除數(shù)據(jù)。
大量的插入、更新和刪除等操作后,清理下數(shù)據(jù),有助于讀取性能。還會歸還空間給操作系統(tǒng)。
sqlite的數(shù)據(jù)清理,只能對整個數(shù)據(jù)庫來操作。

問:數(shù)據(jù)清理命令是?
答:
Attached 數(shù)據(jù)庫名 連接數(shù)據(jù)庫。
vacuum 刪除已經(jīng)打上刪除標記的表,記錄。
reindex 重生成索引

問:查看表結(jié)構(gòu)的sql語句是?
答:
PRAGMA table_info(表名);

問:清空表的sql語句是?
答:
delete from 表名;
update sqlite_sequence SET seq = 0 where name ='表名'; #自增字段歸零。sqlite_sequence是main庫中的特殊表。

問:插入數(shù)據(jù)的sql語句是?
答:
INSERT INTO 表名 VALUES(null,21.5,'this is a texttest.','blob WER@#$@$%^^')

問:空值是?
答:
null

http://www.sqlite.org/lang_select.html
問:查詢數(shù)據(jù)的sql語句是?
答:
SELECT '字段名' FROM '表名' WHERE 條件

問:查詢結(jié)果去重的sql語句是?
答:
SELECT DISTINCT '字段名'
SELECT DISTINCT '字段名1','字段名2','字段名3','字段名4' #所有字段的值完全相同,才算重復。

問:集合去重的sql語句是?
答:
SELECT 返回的集合1
UNION
SELECT 返回的集合2

問:查詢結(jié)果按 '字段名' 分組輸出的sql語句是?
答:
SELECT '字段名' FROM '表名' WHERE 條件 GROUP BY '字段名' ;
GROUP BY 一定要放在WHERE之后,GROUP BY 一定要放在ORDER BY之前。

問:查詢結(jié)果按 '字段名' 排序輸出的sql語句是?
答:
SELECT '字段名' FROM '表名' WHERE 條件 ORDER BY '字段名' ASC ;
SELECT '字段名' FROM '表名' WHERE 條件 ORDER BY '字段名' DESC ;

問:隱藏的自增列叫什么?
答:
rowid或_rowid_
在沒有INTEGER類型的主鍵時,存在這個隱藏字段。

問:sqlite有個叫sqlite3.exe的客戶端軟件。我可以用這個sqlite.exe + cmd + bat 玩轉(zhuǎn)sqlite數(shù)據(jù)庫么?
答:
基本不行。
簡單來說powershell有內(nèi)置的值類型,如小數(shù)數(shù)值,和表datetable。而bat中沒有。
powershell字符串對象長度大,bat數(shù)據(jù)超過8000左右字母不行。

------------------【例子】------------------ 

# 例子1 :專門給菜鳥編寫的 PowerShell 操作Sqlite的例子。大量硬編碼,快速上手。win10測試通過。

Import-Module pssqlite


$sqlite庫文件名 = "a:\pscode\sqlite\test001.db" # 內(nèi)存庫用 ':MEMORY:'
$sqlite庫名 = "" #默認main
$sqlite表名 = "biao001"

#region sql
#---
$建立_表_的sql語句 = ""
$建立_索引_的sql語句 = "CREATE INDEX IF NOT EXISTS $將要建立的索引名 ON $sqlite表名($將要建立索引的字段名)"
#powershell 傳教士 原創(chuàng)例子 始作于 2016-01-01 元旦 允許轉(zhuǎn)載,但必須保留名字和出處,否則追究法律責任
#---
$列出所有_庫名_的sql語句 = 'PRAGMA database_list;'
$列出所有_表名_的sql語句 = "SELECT name FROM sqlite_master WHERE type='table' order by name;"
$列出某個_表結(jié)構(gòu)_的sql語句 = "PRAGMA table_info($sqlite表名);"
$列出某個_表的所有索引_的sql語句 = "PRAGMA index_list($sqlite表名); "

#---
$測試_表是否存在_的sql語句 = "SELECT name FROM sqlite_master WHERE name='$sqlite表名' ; "

#---
$插入一條_數(shù)據(jù)數(shù)據(jù)_的sql語句 = ''

#---
$查詢_表_的sql語句 = ''

#---
$清空_表_的sql語句 = "delete from $sqlite表名 ;"
#---
#endregion sql


# 前提1 庫文件確實存在,有【$sqlite庫文件名】。則建立連接。
# 前提2 庫文件不存在,有【$sqlite庫文件名】和【$建立_表的sql語句】。則建立連接,然后建立表。
# 前提3 有【$建立_表的sql語句】和【$sqlite庫文件名 = ':MEMORY:'】字符串。則建立連接,然后建立表。
if ($sqlite庫文件名 -eq ':MEMORY:')
{
 Write-Verbose '新建【內(nèi)存】sqlite庫文件'
 $我的Sqlite連接 = New-SQLiteConnection -DataSource $sqlite庫文件名
 Invoke-SqliteQuery -query $建立_表的sql語句 -DataSource $sqlite庫文件名 
}
else
{
 if (test-path $sqlite庫文件名)
 {
  Write-Verbose 'sqlite庫文件已經(jīng)存在'
  $我的Sqlite連接 = New-SQLiteConnection -DataSource $sqlite庫文件名
 }
 else
 {
  Write-Verbose '新建sqlite庫文件'
  $我的Sqlite連接 = New-SQLiteConnection -DataSource $sqlite庫文件名

  #新建表
  $字段字串 = ""
  $建立_表_的sql語句 = 
@"
CREATE TABLE IF NOT EXISTS '$sqlite表名' ($字段字串)
"@
  Invoke-SqliteQuery -query $建立_表_的sql語句 -DataSource $sqlite庫文件名
 }
}

# 列出庫,列出表。前提【$我的Sqlite連接】已經(jīng)建立。
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $列出所有_庫名_的sql語句 
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $列出所有_表名_的sql語句



# 建表索引。前提【$sqlite表名】,【$將要建立的索引名】,【$將要建立索引的字段名】已經(jīng)賦值。
$將要建立的索引名 = 'yyy'
$將要建立索引的字段名 = 'bbb'
$建立_索引_的sql語句 = "CREATE INDEX IF NOT EXISTS $將要建立的索引名 ON $sqlite表名($將要建立索引的字段名)"
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $建立_索引_的sql語句



# 測表是否存在,查表結(jié)構(gòu),查表索引。前提【$sqlite表名】已經(jīng)賦值。
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $測試_表是否存在_的sql語句 #返回表名 
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $列出某個_表結(jié)構(gòu)_的sql語句 
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $列出某個_表的所有索引_的sql語句



$查詢_表_的sql語句 = "select * from '$sqlite表名'  ;"
$查詢_表_的sql語句
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $查詢_表_的sql語句



#插入數(shù)據(jù)
$字段1值 = 'null'
$字段2值 = '121215687'
$字段3值 = ''
$插入一條_數(shù)據(jù)數(shù)據(jù)_的sql語句 = "INSERT INTO $sqlite表名 VALUES($字段1值,$字段2值) ;" #本例表只有2個字段 
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $插入一條_數(shù)據(jù)數(shù)據(jù)_的sql語句



#查詢數(shù)據(jù)
$查詢_表_的sql語句 = "select * from '$sqlite表名' ;"
$查詢_表_的sql語句
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $查詢_表_的sql語句



#清空
$清空_表_的sql語句 = "delete from $sqlite表名 ;"
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $清空_表_的sql語句
Invoke-SqliteQuery -SQLiteConnection $我的Sqlite連接 -Query $查詢_表_的sql語句

例子2:專門給菜鳥編寫的 PowerShell 操作Sqlite bulkcopy的例子。大量硬編碼,快速上手。win10測試通過。

Import-Module pssqlite

$sqlite庫文件名 = "a:\pscode\sqlite\test006.db" # 內(nèi)存庫用 ':MEMORY:'
$sqlite庫名 = "" #默認main
$sqlite表名 = "biao001"

if (test-path $sqlite庫文件名)
{
 Write-error 'sqlite庫文件已經(jīng)存在'
 exit 1
}

$點net的DataTable = get-process | Out-DataTable #數(shù)據(jù)來源

$列集合 = $點net的DataTable.Columns
[array]$每個字段名 = @()
foreach ($temp001 in $列集合)
{
 $每個字段名 += $temp001.ColumnName
}

#powershell 傳教士 原創(chuàng)例子 始作于 2016-01-01 元旦 允許轉(zhuǎn)載,但必須保留名字和出處,否則追究法律責任

$每個字段類型 = 'text'
$temp002 = $每個字段名[0]
$建立_表_的sql語句 = 
@"
CREATE TABLE IF NOT EXISTS '$sqlite表名' ($temp002 $每個字段類型)
"@
#Write-Warning $建立_表_的sql語句
Invoke-SqliteQuery -query $建立_表_的sql語句 -DataSource $sqlite庫文件名

for ($i = 1;$i -le $每個字段名.Count ;$i++)
{
 $temp003 = $每個字段名[$i]
 $建立_表_的sql語句 = 
@"
ALTER TABLE '$sqlite表名' ADD COLUMN '$temp003' $每個字段類型 ;
"@
# Write-Warning $建立_表_的sql語句
 Invoke-SqliteQuery -query $建立_表_的sql語句 -DataSource $sqlite庫文件名
}

Invoke-SQLiteBulkCopy -DataTable $點net的DataTable -DataSource $sqlite庫文件名 -Table $sqlite表名 -force

文章到這就結(jié)束了,需要的朋友可以多看看實例。

您可能感興趣的文章:
  • PowerShell 指令操作集合(小結(jié))
  • 如何利用PowerShell監(jiān)控Win-Server性能詳解
  • PowerShell中Job相關(guān)命令及并行執(zhí)行任務(wù)詳解
  • 基于PowerShell在Ubuntu系統(tǒng)的使用詳解
  • PowerShell 遠程執(zhí)行任務(wù)的方法步驟
  • 使用 powershell 創(chuàng)建虛擬機
  • 通過DNS TXT記錄執(zhí)行powershell
  • PowerShell實現(xiàn)簡單的grep功能
  • PowerShell 語音計算器實現(xiàn)代碼
  • PowerShell腳本 隨機密碼生成器(ps隨機密碼生成器)
  • 原創(chuàng)powershell腳本小工具ctracert.ps1跟蹤路由(win8以上系統(tǒng))
  • powershell玩轉(zhuǎn)SQL SERVER所有版本的方法
  • PowerShell基本使用教程

標簽:運城 岳陽 德州 鶴崗 山南 六盤水 湛江 濟南

巨人網(wǎng)絡(luò)通訊聲明:本文標題《powershell玩轉(zhuǎn)sqlite數(shù)據(jù)庫詳細介紹》,本文關(guān)鍵詞  powershell,玩轉(zhuǎn),sqlite,數(shù)據(jù)庫,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《powershell玩轉(zhuǎn)sqlite數(shù)據(jù)庫詳細介紹》相關(guān)的同類信息!
  • 本頁收集關(guān)于powershell玩轉(zhuǎn)sqlite數(shù)據(jù)庫詳細介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    久久国产一久久高清| 91麻豆精品国产综合久久久| 成人av在线播放| 91麻豆精品国产自产在线观看一区| 日韩中文字幕在线观看视频| 久久99中文字幕久久| 九九热国产视频| 美女免费毛片| 天天色色色| 日本在线不卡视频| 欧美夜夜骑 青草视频在线观看完整版 久久精品99无色码中文字幕 欧美日韩一区二区在线观看视频 欧美中文字幕在线视频 www.99精品 香蕉视频久久 | 成人免费网站久久久| 国产麻豆精品hdvideoss| 国产精品免费精品自在线观看| 免费国产在线视频| 欧美一区二区三区在线观看| 二级片在线观看| 99热精品在线| 国产精品1024永久免费视频| 日本特黄特黄aaaaa大片| 欧美一级视频免费| 日韩av片免费播放| 欧美一级视| 一级女性全黄生活片免费| 九九久久99综合一区二区| 一级片片| 免费毛片基地| 国产亚洲免费观看| 国产一区二区精品尤物| 国产一区二区精品久| 国产视频一区二区在线播放| 午夜家庭影院| 成人免费观看男女羞羞视频| 国产高清在线精品一区a| 国产一区二区精品在线观看| 日韩专区第一页| 欧美电影免费看大全| 天堂网中文字幕| 青青青草影院| 日韩中文字幕在线观看视频| 你懂的日韩| 99久久精品国产免费| 美女免费黄网站| 亚洲精品影院| 免费一级片在线观看| 成人a级高清视频在线观看| 国产不卡在线观看视频| 欧美另类videosbestsex久久| 韩国毛片免费| 欧美大片毛片aaa免费看| 欧美一级视| 国产伦精品一区二区三区无广告| 99热精品一区| 国产欧美精品| 精品视频在线观看一区二区三区| 国产91精品露脸国语对白| 精品国产香蕉伊思人在线又爽又黄| 可以免费在线看黄的网站| 国产极品白嫩美女在线观看看| 四虎久久精品国产| | 色综合久久天天综合观看| 久久久成人影院| 日韩av东京社区男人的天堂| 午夜在线亚洲| 亚洲 激情| 久久99中文字幕久久| 国产亚洲免费观看| a级毛片免费全部播放| 国产伦精品一区三区视频| 欧美电影免费| 国产成人女人在线视频观看| 韩国三级视频网站| 久久久久久久网| 美女免费黄网站| 欧美激情一区二区三区在线播放 | 美女被草网站| 你懂的国产精品| 精品国产一区二区三区久久久狼| 国产一区二区精品久久91| 欧美国产日韩久久久| 午夜在线影院| 日韩一级黄色片| 日韩免费在线| 国产一区二区精品| 亚洲精品影院一区二区| 欧美一级视频高清片| 四虎久久精品国产| 精品久久久久久中文字幕2017| 国产视频一区在线| 欧美国产日韩一区二区三区| 国产a毛片| 久久久久久久免费视频| 久久国产影视免费精品| 四虎久久精品国产| 精品在线观看一区| 日韩中文字幕在线播放| 91麻豆tv| 国产视频一区二区在线播放| 日韩一级黄色片| 国产成人欧美一区二区三区的| 亚欧乱色一区二区三区| 欧美1区| 九九久久99| 欧美国产日韩在线| 国产一区二区精品久久91| 欧美激情一区二区三区视频高清 | 精品国产一区二区三区久久久狼| 韩国毛片免费| 欧美一级视| 久久国产影院| 国产网站在线| 国产美女在线观看| 美女免费毛片| 精品久久久久久中文| 可以免费看污视频的网站| 韩国毛片免费| 午夜久久网| 国产一区二区精品久久91| 久久久久久久久综合影视网| 国产伦理精品| 日本伦理片网站| 久久精品欧美一区二区| 黄视频网站免费| 欧美激情一区二区三区在线| 99热精品一区| 日韩在线观看视频黄| 欧美一级视| 久久国产精品永久免费网站| 亚洲女初尝黑人巨高清在线观看| 好男人天堂网 久久精品国产这里是免费 国产精品成人一区二区 男人天堂网2021 男人的天堂在线观看 丁香六月综合激情 | 成人免费网站久久久| 亚洲第一色在线| 久久国产精品自由自在| 国产一区二区精品在线观看| 黄视频网站免费| 午夜精品国产自在现线拍| 日韩欧美一二三区| 香蕉视频久久| 黄色福利| 欧美a级大片| 高清一级淫片a级中文字幕| 国产精品免费久久| 国产高清视频免费观看| 国产精品123| 99久久精品费精品国产一区二区| 日日夜夜婷婷| 九九久久99| 久久国产精品自由自在| 国产高清在线精品一区二区| 韩国三级香港三级日本三级| 国产一区二区精品尤物| 亚洲女初尝黑人巨高清在线观看| 免费一级片在线| 精品久久久久久中文| 国产综合成人观看在线| 免费国产在线视频| 日本在线www| 成人a级高清视频在线观看| 精品国产一区二区三区久久久狼| 日本免费乱人伦在线观看| 欧美激情一区二区三区视频 | 久久精品欧美一区二区| 欧美国产日韩一区二区三区| 久久精品欧美一区二区| 99久久精品国产麻豆| 欧美日本免费| 国产国产人免费视频成69堂| 亚洲 国产精品 日韩| 亚洲精品影院| 午夜在线亚洲| 亚洲wwwwww| 亚洲天堂免费观看| 国产一区二区精品久久| 日本特黄特黄aaaaa大片| 久久99中文字幕| 沈樵在线观看福利| 日本在线不卡视频| 欧美电影免费看大全| 国产不卡在线观看| 美女免费毛片| 成人a级高清视频在线观看| 久草免费在线观看| 国产一区二区精品尤物| 欧美a免费| 精品在线观看一区| 日韩在线观看网站| 国产91精品系列在线观看| 欧美一级视频高清片| 青青青草视频在线观看| 成人a大片高清在线观看| 黄色短视频网站| 国产亚洲精品aaa大片| 国产成人精品影视| | 尤物视频网站在线观看| 日本免费乱人伦在线观看| 97视频免费在线观看| 色综合久久天天综线观看| 欧美另类videosbestsex高清|