日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

数据库语句

發布時間:2023/12/31 数据库 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 数据库语句 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

SQL Server 2000 應用于開發 范例寶典 --明日科技編著 筆記

1、數據庫空間的增加與收縮

增加可以再屬性中設置,收縮百分比,如0%為收縮后把沒有用到的空間釋放掉。按百分比增長為為加入數據之后按當前內存的多少來增加數據庫的大小。(貌似是這樣的)

2、標識列

(1)、列的數據類型為不帶小數的數值類型
(2)、在進行插入(Insert)操作時,該列的值是由系統按一定規律生成,不允許空值
(3)、列值不重復,具有標識表中每一行的作用,每個表只能有一個標識列。
由于以上特點,使得標識列在數據庫的設計中得到廣泛的使用。
2.1 標識列的組成
創建一個標識列,通常要指定三個內容:
(1)、類型(type)
在SQL Server 2000中,標識列類型必須是數值類型,如下:
decimal、int、numeric、smallint、bigint 、tinyint
其中要注意的是,當選擇decimal和numeric時,小數位數必須為零
另外還要注意每種數據類型所有表示的數值范圍
(2)、種子(seed)
是指派給表中第一行的值,默認為1
(3)、遞增量(increment)
相鄰兩個標識值之間的增量,默認為1。

總結:標識列 一般作為序號列 自動實現遞增。

3、對列進行操作

ALTER table 密碼錯誤 add 個數 int NULL ALTER table 密碼錯誤 drop column 時間? ALTER table 密碼錯誤 alter column 時間 int

添加自增列,可以設置初始值,以及自增量

ALTER table 密碼錯誤 add nob int identity(1,1) not null

4、設置公式

如設置總金額列=金額*個數,則在設計表界面中,選中總金額->公式 ? 金額*個數自動計算 非常好

手機號 ? 金額 ? 個數 總金額

15013280595 ? ?230 ??2460

5、小數位數

MySQL允許使用非標準語法:FLOAT(M,D)或REAL(M,D)或DOUBLE PRECISION(M,D)。這里,“(M,D)”表示該值一共顯示M位整數,其中D位位于小數點后面。例如,定義為FLOAT(7,4)的一個列可以顯示為-999.9999。MySQL保存值時進行四舍五入,因此如果在FLOAT(7,4)列內插入999.00009,近似結果是999.0001。

6、獲取當前時間

select getdate()7、類型轉換

CAST(ListPrice AS int) CONVERT(int, ListPrice) 都是將ListPrice 這一列轉化為int 類型

8、索引

8.1 如果要經常查詢一列,而且這一列是唯一的話可以建立唯一索引,同樣可以對多個列建立唯一索引。 這樣可以提高查詢的效率。 但是其缺點是增加需要磁盤空間,降低添加、刪除、以及更新行的速度。另外還有(聚集索引??)

建立索引前:

select 手機號 from 原始賬號

結果是:

CPU 時間 = 62 毫秒,耗費時間 = 355 毫秒。

建立索引后:

CPU 時間 = 47 毫秒,耗費時間 = 333 毫秒。

8.2 主鍵索引

數據庫表中通常有一列或列的組合,其值用來唯一標識表中的每一行,該列或列的組合稱為表的主鍵,在視圖操作中定義主鍵將自動設置為主鍵索引。能加快查詢速度。

9、查看語句執行時間以及cpu運行情況,可以看語句的執行效率如何

SET STATISTICS PROFILE ON SET STATISTICS IO ON SET STATISTICS TIME ON select * from 原始賬號 SET STATISTICS PROFILE OFF SET STATISTICS IO OFF SET STATISTICS TIME OFF顯示結果如下:

SQL Server 執行時間:?
? ?CPU 時間 = 0 毫秒,耗費時間 = 0 毫秒。
SQL Server 分析和編譯時間:?
? ?CPU 時間 = 0 毫秒,耗費時間 = 0 毫秒。
(所影響的行數為 292481 行)
表 '原始賬號'。掃描計數 1,邏輯讀 3362 次,物理讀 0 次,預讀 0 次。
SQL Server 執行時間:?
? ?CPU 時間 = 156 毫秒,耗費時間 = 1463 毫秒。

10、關系的建立與維護

關系的建立可以是一對一,也就是表A和表B的主鍵記錄是唯一的,一一對應。也可以是一對多,表A中的一行,在B中有多行記錄,但是B的都在A中。

其作用是:

防止在從表中添加主表中沒有的ID等,必須主表先加,從表才能加,從表刪除,主表才能刪除。這樣做到了一個關系。可以保護關心的數據,放在兩外一個表中。

11、check 約束

這個可以通過check函數來實現,比如說唯一等。

12、sql的注釋方式有兩種:

-- ?和/* */

13、數據庫操作

drop database name--刪除數據庫

sp_detach_db @dbname='ZK'--分離數據庫 sp_attach_db @dbname=ZK,@filename1='F:\\ZKSQL_data.MDF',--附加數據庫@filename2='...._Log.Ldf'其中,分離操作的作用是能夠將數據庫從服務器移除,不能再使用,但是其數據還存在本地磁盤中,通過附加數據庫可以再次使用,然而drop是無法再使用。

同樣可以附加單文件數據庫,其日志文件將自動添加。

備份與還原,這里就還是用管理器來操作好了。

14、表的一些操作

create table test( ID int not null, name varchar(50) null ) drop table test --刪除表 alter table 密碼錯誤 add 個數 int NULL --添加列,只有這個不要加column alter table 密碼錯誤 drop column 時間 刪除列 alter table 密碼錯誤 alter column 時間 int 更改列 exec sp_rename 'test','testnew'--更改表名 exec sp_rename 'testnew.name','名稱'--更改列名15、select 語句

避免使用not 會讓查詢變慢

--使用別名 select 密碼錯誤.金額 as 金額統計 from 密碼錯誤 select (金額+1) as 金額 from 密碼錯誤 --在查詢結果中添加列,進行多列數據的計算 select sum(金額) as 金額 from 密碼錯誤-- 利用聚合函數 ,同樣需要重命名,且需要用group by 進行分組 --模糊匹配 非常強大,正是我需要的,跟LINUX shell 腳本非常像 --select * from 密碼錯誤 where LEFT(手機號,3) like '158' --158開頭的手機號 非常好用,這里用的是字符函數,同樣可以用數字函數,日期時間函數 --select * from 密碼錯誤 where LEFT(手機號,3) like '15_' --前3為以15開頭的,這里_是匹配一個字符 --select * from 密碼錯誤 where 手機號 like '158%' --%匹配任意多個字符,可以用兩個%進行查詢,但是建議不要用兩個 --select * from 密碼錯誤 where LEFT(手機號,3) like '1[4-5]_'--范圍匹配 --select * from 密碼錯誤 where LEFT(手機號,3) like '1[^4-5]_' --and(...or ...)--這種條件值得注意 格式化字段和結果集利用這個可以解決在號碼中加-的問題,不用每次都去excel中取做,但是由于sql2000不支持mid ,且號碼中含有空格,所以這里用 select LEFT(手機號,3)+ '_'+RIGHT( LEFT(手機號,7),4)+'_'+ RIGHT( LEFT(手機號,11),4) as 手機號 from 密碼錯誤實現了功能,效果如下:

134_1814_7589
134_1814_9634

16、字符串函數

LTRIM ?以及 RTRIM ?

ROUND(748.58,-1) ? 當后面數字為負數為 判斷小數點前的位數 ?為0位判斷小數點后一位 ?為正數為判斷后位數

CAST(.. ?AS ?int )

select cast(round(sale/price,0) as int) as 價格

in ?not in

17 ?一些select 語句

use HB select * from 總中獎 All 為大于所有的,是里面的最大值,any 為最小的,這里不再贅述 select * from 總中獎 where 金額 > all(select 金額 from 總中獎 where 手機號 in('15013376654','13433921643')) select * from 總中獎 where not (個數 between 2 and 4) --選取個數小于2的 --distinct --distinct 為不選取重復行,若在sum avg max 等聚合函數中用distinct 函數 那么則先去掉重復再做計算 select distinct * from 密碼錯誤 --這里如果沒有對服務密碼進行聚合的話 那么group 必須用到該列select 手機號 ,服務密碼,count(手機號) as 手機號個數 from 密碼錯誤 group by 手機號,服務密碼 having count(手機號)=1 order by 手機號--多個語句 非常棒 --count(*)為統計每個分組統計的個數select * from 密碼錯誤 where 手機號 is not null select top 5 percent * from 密碼錯誤 order by 手機號 desc --這里用到了 percent,默認是升序的 select * from 密碼錯誤 where 手機號 between '13418144500' and '13418147590'-- 字符串的區間判斷方式 select * from 密碼錯誤 where month(日期)=8 --這是month 函數的用法select 所屬部門,性別,avg(工資) as 平均工資 from 工資表 group by 所屬部門, 性別 with cube--這個能夠按部門求出平均工資之后,還能按照部門里面的性別,加出兩個分組 select 所屬部門,性別,avg(工資) as 平均工資 from 工資表 group by 所屬部門,性別 with rollup--好像效果和上面的差不多 select * from 密碼錯誤 compute sum(金額)--這里還是比較方便的 select 金額,count(金額)as 個數 ,sum(金額) as 總金額 from 總中獎 group by 金額 order by 總金額 desc--利用這一句來看所有的分部情況,非常方便 select 編號,銷價 as 銷價最少 ,利潤 as 利潤最少 from table1 where 銷價 in(select min(銷價) from table1)or 利潤 in( select min(利潤) from table1) select 手機號, 金額 from 密碼錯誤 where 金額 in (select min(金額) from 密碼錯誤)-- 不能用 where 金額=min(金額) --一些數學函數 --rand, sin,cos,tan, abs ,sqrt,log,exp,floor為返回不大于所給數的最大整數,ceiling為不小于所給數的最小整數 --日期函數 select dateadd(day,1,getdate()) as tomorrow --返回第二天 select dateadd(year,1,getdate()) as nextyear--返回第二年 select datediff(day,'03/14/2014',getdate()) as daycount--相差天數,其它類似 select day(getdate()) as daynow --返回這個月的第幾天,month,year 類似 select datepart(day,getdate()) as daynow--效果和上面的是一樣的 select 手機號, +char(64)+ cast( 金額 as varchar(20) ) as 金額 from 密碼錯誤 --輸出15013280595 @230 --下面寫一段書上的例子declare @pos int,@s varchar(50) set @pos=1 set @s='i want it' while @pos<datalength(@s) beginselect substring(@s,@pos,1)set @pos=@pos+1 end--上面的例子告訴了我 可以用substring 來取代left rightreplicate 函數,為重復多少遍 如 replicate (手機號,1)為重復一遍 upper()轉化為大寫 space(1)一個空格 substring left(@s,3)等--多表查詢和使用表的別名這個已經會了,就不再贅述 --union--select 手機號 ,金額 from 總中獎 union select 手機號,金額 from 密碼錯誤 order by 金額 desc --select 金額 ,sum(金額) as 總金額,count(金額) as 個數 from 總中獎 group by 金額 union select 金額 ,sum(金額) as 總金額 ,count(金額) as 個數 from 密碼錯誤 group by 金額 order by 金額 desc--注意,可以合并兩個類似的表,但是單一的select 字句不能有order 或者 compute 字句,只能在最后加上 --另外union 會自動刪除重復的行,但是如果加上 union 會保留重復的行 --使用多個嵌套union 這里會按照union 的嵌套順序以及是否使用all 來進行去掉重復操作--in,exists --這個也已經用過了,這里比較其區別 --select * from 原始賬號 where 手機號 in(select 手機號 from 密碼錯誤) --select * from 原始賬號 where 手機號 =any(select 手機號 from 密碼錯誤) --select * from 原始賬號 where exists(select * from 密碼錯誤 where 手機號=原始賬號.手機號)--上面三條語句的功能是一樣的,但是exists只需要判斷后面查詢有結果就可以了,而=any,some 和in 的作用是一樣的 --同樣可以用notin 等 --aome,any, all --all 必須是所有的,some 和any 是一樣的--在select 子句中的子查詢,這個就是不斷的嵌套用as from 等來做,或者聚集函數 特別要注意 這個as 是可以去掉的--delete ... update ...set ..=..--內連接查詢 --這個是可以用a. b.什么來實現的, select a.手機號,a.個數,b.金額 from 總中獎 as a inner join 密碼錯誤 as b on a.手機號=b.手機號 select a.手機號,a.個數,b.金額 from 總中獎 as a ,密碼錯誤 as b where a.手機號=b.手機號 select * from ...顯示兩個表的所有列 --上面兩句的效果是一樣的--自身連接 --自身連接其實也是有作用的,兩個結果都來自同一個表 select a.手機號,a.金額 ,b.金額, (a.金額-b.金額) as 差額 from 密碼錯誤 a inner join 密碼錯誤 b on a.金額>b.金額 order by 差額 desc--外連接 --內連接 只連接匹配的行 --左外連接 包含左邊表的全部行(不管右邊的表中是否存在與它們匹配的行),以及右邊表中全部匹配的行 --右外連接 包含右邊表的全部行(不管左邊的表中是否存在與它們匹配的行),以及左邊表中全部匹配的行 --全外連接 包含左、右兩個表的全部行,不管另外一邊的表中是否存在與它們匹配的行。 --(H)(theta)連接 使用等值以外的條件來匹配左、右兩個表中的行 --交叉連接 生成笛卡爾積-它不使用任何匹配或者選取條件,而是直接將一個數據源中的每個行與另一個數據源的每個行都一一匹配 --上面是看到的關于這幾種連接的區別 --同時可以利用內連接、外鏈接進行多個一起使用,三表一起進行組合 select a.員工編號,b.基本工資,c.請假天數 from (a left inner join b on a.員工編號=b.員工編號) left inner join c on b.員工姓名=c.員工姓名 --感覺還是很好用的樣子--case ,查詢數據select *,狀態= case when 金額<50 then '太少'when 金額>=50 then '滿足要求'end from 密碼錯誤--case ,更新列update 密碼錯誤 set 狀態 = case when 金額<50 then 0when 金額>=50 then 1endalter table 密碼錯誤 drop column 狀態 select * from 密碼錯誤--交叉查詢 --靜態交叉表 --靜態交叉表可以通過select 語句來實現,加上case 等就可以了 --select 員工姓名, sum( case 所在部門 when '食品部' then 銷售業績 else null end) as 食品部業績,sum(...) from 銷售 group by 員工姓名 --上面這個例子,可以以員工為基礎,若在一個部門下有業績,則寫出,否則為null--動態交叉 --動態交叉表就是列表可以根據表中數據的情況動態創建列,不能用select 來實現,但是可以用存儲過程來實現--以后遇到再深入吧以上這些語句,解決了所有sql 中的查詢問題,也終于明白了內連接與外鏈接 以及union的用法,知識對于交叉連接的動態交叉連接,以后有時間再看吧


18、一些更新操作

use HB select * from 密碼錯誤 insert into 密碼錯誤 (手機號,服務密碼,登錄密碼,支付密碼,金額) values(15,33,33,33,1) insert 密碼錯誤 select '1','2','3','4',1 union all select '1','2','3','4',2--這一段和上面的區別是適合于批量插入,這個技能太強大了 update 密碼錯誤 set 手機號='16' where 手機號='15' delete from 密碼錯誤 where 手機號='16'--go 的用法 --當語句過長時,或者當一些語句作為批處理,那么就用go來分開,是批處理的標志go begin tran Update_dataupdate 密碼錯誤 set 手機號='2' where 手機號='1' commit tran Update_data


19、流程控制語句

use HBif (select count(*) from 密碼錯誤 where 金額>30)>0 beginprint 'ok' end else beginprint 'fail' end--檢測語句 --可以將if 后面的改為 if exists (select * from 密碼錯誤 where 金額>30) --感覺好用多了while @a<10 begin continue end--casecase 金額when 1 then 0 endgo create procedure person as if exists (select * from 密碼錯誤 where 金額>30) beginreturn 1 end go declare @r intexec @r=personprint @r--延期執行語句beginwaitfor time '21:00'select * from 密碼錯誤 end--這里的話 又不是作業,不是事務之類的,怎么會延時,又怎么取消呢--跳轉語句 --通過設置標簽,Label2: --然后用 goto Label2來跳轉--功能性語句 print--錯誤處理語句 if @@error<>0 --這一句用起來要謹慎,有的時候雖然可以由結果,但是還是會有這樣的報錯
20、索引

http://www.cnblogs.com/ericwen/archive/2008/09/04/1283998.html

以上是全文索引的鏈接,沒事的時候可以看一下 ,現在還不太懂


21、視圖

創建視圖的作用是可以用來保存臨時表的數據,這樣就不需要導入導出多次,解決了我以前不斷導入導出保存數據的問題,真的是非常好。

GO create view r1 as select * from 總中獎 where exists(select * from 密碼錯誤 where 手機號 = 總中獎.手機號) go exec sp_helptext 'r1' GO select * from r1 GO--修改視圖 go alter view r1 as select * from 密碼錯誤 where 金額>50 go--select * from r1 --對視圖文本進行加密 go create view r2 with encryption as select * from 密碼錯誤 where 金額<=50 go 這樣的話 在企業管理器視圖一覽是看不到r2的select * from r2--刪除視圖 drop view r2--操作視圖 insert into r1(手機號,金額,個數) values('1',20,10) 這里插入失敗 delete r1 where 個數=1 update r1 set 個數=3 where 金額>0 select * from r1
22、存儲過程

存儲過程最多可以有2100個承諾書,參數名稱必須符合標識符的規則,每個過程的參數僅用于該過程本身,對于可以是cursor數據類型的輸出參數,沒有最大數目的限制。

use HB<pre name="code" class="sql">--創建存儲過程go--這里需要用到動態sql 語句create procedure p1 @表 varchar(20),@ot varchar(20) outputasbegin--declare @sql varchar(50)--set @sql='select * from 密碼錯誤'--exec (@sql) --這兩種方法都是可以的,下面這種加上了n,但是這里由于這里用到外面的表 ,所以要用動態語句,只能用下面的declare @sql nvarchar(100)set @sql=N'select * from '+@表exec sp_executesql @sqlset @ot='存在表'+@表--print @otreturn 1endgo--修改存儲過程--查看存儲過程exec sp_helptext p1 --查看相關定義的代碼exec sp_help p1 --查看創建時間等信息--重命名存儲過程exec sp_rename p1,pexec sp_helptext p--刪除存儲過程drop procedure p--執行存儲過程godeclare @ret int,@ot varchar(20)exec @ret=p1 '密碼錯誤',@ot output --切記這里要加上outputprint @retprint @otgo--擴展存儲過程sp_addextendedproc 'xp_hello', 'c:\Program Files\Microsoft SQL Server\MSSQL12.0.MSSQLSERVER\MSSQL\Binn\xp_hello.dll';--這里xp-hello 為擴展存儲過程的函數名,后面的為路徑--對存儲過程的定義文本進行加密--和視圖一樣 加上 with encryption 即可--應用存儲過程sp_monitor 和sp_spaceused--具體怎么用還不是很清楚--自動執行存儲過程exec sp_procoption 'p1','startup','on' 23、觸發器

觸發器是一種特殊類型的存儲過程,與表格緊密相連,當用戶修改表中數據時,觸發器將自動執行。觸發器可以使用語句進行復雜的邏輯處理,它基于一個表創建,但是可以對多個表進行操作。常常用于復雜的業務規則。

注意:

其他的一樣,create trigger 語句必須是批處理的第一個語句。

這里用到別人的語句

SQL Server 觸發器

觸發器是一種特殊類型的存儲過程,它不同于之前的我們介紹的存儲過程。觸發器主要是通過事件進行觸發被自動調用執行的。而存儲過程可以通過存儲過程的名稱被調用。

? 什么是觸發器

??? 觸發器對表進行插入、更新、刪除的時候會自動執行的特殊存儲過程。觸發器一般用在check約束更加復雜的約束上面。觸發器和普通的存儲過程的區別是:觸發器是當對某一個表進行操作。諸如:update、insert、delete這些操作的時候,系統會自動調用執行該表上對應的觸發器。SQL Server 2005中觸發器可以分為兩類:DML觸發器和DDL觸發器,其中DDL觸發器它們會影響多種數據定義語言語句而激發,這些語句有create、alter、drop語句。

?

??? DML觸發器分為:

??? 1、 after觸發器(之后觸發)

??????? a、 insert觸發器

??????? b、 update觸發器

??????? c、 delete觸發器

?

??? 2、 instead of 觸發器 (之前觸發)

?

??? 其中after觸發器要求只有執行某一操作insert、update、delete之后觸發器才被觸發,且只能定義在表上。而instead of觸發器表示并不執行其定義的操作(insert、update、delete)而僅是執行觸發器本身。既可以在表上定義instead of觸發器,也可以在視圖上定義。

?

??? 觸發器有兩個特殊的表:插入表(instered表)和刪除表(deleted表)。這兩張是邏輯表也是虛表。有系統在內存中創建者兩張表,不會存儲在數據庫中。而且兩張表的都是只讀的,只能讀取數據而不能修改數據。這兩張表的結果總是與被改觸發器應用的表的結構相同。當觸發器完成工作后,這兩張表就會被刪除。Inserted表的數據是插入或是修改后的數據,而deleted表的數據是更新前的或是刪除的數據。

?

對表的操作

Inserted邏輯表

Deleted邏輯表

增加記錄(insert)

存放增加的記錄

刪除記錄(delete)

存放被刪除的記錄

修改記錄(update)

存放更新后的記錄

存放更新前的記錄

??? Update數據的時候就是先刪除表記錄,然后增加一條記錄。這樣在inserted和deleted表就都有update后的數據記錄了。注意的是:觸發器本身就是一個事務,所以在觸發器里面可以對修改數據進行一些特殊的檢查。如果不滿足可以利用事務回滾,撤銷操作。

?

? 創建觸發器

??? 語法

create trigger tgr_name on table_name with encrypion –加密觸發器for update... asTransact-SQL

??? # 創建insert類型觸發器

--創建insert插入類型觸發器 if (object_id('tgr_classes_insert', 'tr') is not null)drop trigger tgr_classes_insert go create trigger tgr_classes_insert on classesfor insert --插入觸發 as--定義變量declare @id int, @name varchar(20), @temp int;--在inserted表中查詢已經插入記錄信息select @id = id, @name = name from inserted;set @name = @name + convert(varchar, @id);set @temp = @id / 2; insert into student values(@name, 18 + @id, @temp, @id);print '添加學生成功!'; go --插入數據 insert into classes values('5班', getDate()); --查詢數據 select * from classes; select * from student order by id;

???? insert觸發器,會在inserted表中添加一條剛插入的記錄。

?

??? # 創建delete類型觸發器

--delete刪除類型觸發器 if (object_id('tgr_classes_delete', 'TR') is not null)drop trigger tgr_classes_delete go create trigger tgr_classes_delete on classesfor delete --刪除觸發 asprint '備份數據中……'; if (object_id('classesBackup', 'U') is not null)--存在classesBackup,直接插入數據insert into classesBackup select name, createDate from deleted;else--不存在classesBackup創建再插入select * into classesBackup from deleted;print '備份數據成功!'; go -- --不顯示影響行數 --set nocount on; delete classes where name = '5班'; --查詢數據 select * from classes; select * from classesBackup;

?? delete觸發器會在刪除數據的時候,將剛才刪除的數據保存在deleted表中。

?

??? # 創建update類型觸發器

--update更新類型觸發器 if (object_id('tgr_classes_update', 'TR') is not null)drop trigger tgr_classes_update go create trigger tgr_classes_update on classesfor update asdeclare @oldName varchar(20), @newName varchar(20);--更新前的數據select @oldName = name from deleted;if (exists (select * from student where name like '%'+ @oldName + '%'))begin--更新后的數據select @newName = name from inserted;update student set name = replace(name, @oldName, @newName) where name like '%'+ @oldName + '%';print '級聯修改數據成功!';endelseprint '無需修改student表!'; go --查詢數據 select * from student order by id; select * from classes; update classes set name = '五班' where name = '5班';

???? update觸發器會在更新數據后,將更新前的數據保存在deleted表中,更新后的數據保存在inserted表中。

?

??? # update更新列級觸發器

if (object_id('tgr_classes_update_column', 'TR') is not null)drop trigger tgr_classes_update_column go create trigger tgr_classes_update_column on classesfor update as--列級觸發器:是否更新了班級創建時間if (update(createDate))beginraisError('系統提示:班級創建時間不能修改!', 16, 11);rollback tran;end go --測試 select * from student order by id; select * from classes; update classes set createDate = getDate() where id = 3; update classes set name = '四班' where id = 7;

???? 更新列級觸發器可以用update是否判斷更新列記錄;

?

??? # instead of類型觸發器

?????? instead of觸發器表示并不執行其定義的操作(insert、update、delete)而僅是執行觸發器本身的內容。

?????? 創建語法

create trigger tgr_name on table_name with encryptioninstead of update... asT-SQL

???

????? # 創建instead of觸發器

if (object_id('tgr_classes_inteadOf', 'TR') is not null)drop trigger tgr_classes_inteadOf go create trigger tgr_classes_inteadOf on classesinstead of delete/*, update, insert*/ asdeclare @id int, @name varchar(20);--查詢被刪除的信息,病賦值select @id = id, @name = name from deleted;print 'id: ' + convert(varchar, @id) + ', name: ' + @name;--先刪除student的信息delete student where cid = @id;--再刪除classes的信息delete classes where id = @id;print '刪除[ id: ' + convert(varchar, @id) + ', name: ' + @name + ' ] 的信息成功!'; go --test select * from student order by id; select * from classes; delete classes where id = 7;

???

????? # 顯示自定義消息raiserror

if (object_id('tgr_message', 'TR') is not null)drop trigger tgr_message go create trigger tgr_message on studentafter insert, update as raisError('tgr_message觸發器被觸發', 16, 10); go --test insert into student values('lily', 22, 1, 7); update student set sex = 0 where name = 'lucy'; select * from student order by id;

??? # 修改觸發器

alter trigger tgr_message on student after delete as raisError('tgr_message觸發器被觸發', 16, 10); go --test delete from student where name = 'lucy';

??? # 啟用、禁用觸發器

--禁用觸發器 disable trigger tgr_message on student; --啟用觸發器 enable trigger tgr_message on student;

??? # 查詢創建的觸發器信息

--查詢已存在的觸發器 select * from sys.triggers; select * from sys.objects where type = 'TR';--查看觸發器觸發事件 select te.* from sys.trigger_events te join sys.triggers t on t.object_id = te.object_id where t.parent_class = 0 and t.name = 'tgr_valid_data';--查看創建觸發器語句 exec sp_helptext 'tgr_message';

??? # 示例,驗證插入數據

if ((object_id('tgr_valid_data', 'TR') is not null))drop trigger tgr_valid_data go create trigger tgr_valid_data on student after insert asdeclare @age int,@name varchar(20);select @name = s.name, @age = s.age from inserted s;if (@age < 18)beginraisError('插入新數據的age有問題', 16, 1);rollback tran;end go --test insert into student values('forest', 2, 0, 7); insert into student values('forest', 22, 0, 7); select * from student order by id;

??? # 示例,操作日志

if (object_id('log', 'U') is not null)drop table log go create table log(id int identity(1, 1) primary key,action varchar(20),createDate datetime default getDate() ) go if (exists (select * from sys.objects where name = 'tgr_student_log'))drop trigger tgr_student_log go create trigger tgr_student_log on student after insert, update, delete asif ((exists (select 1 from inserted)) and (exists (select 1 from deleted)))begininsert into log(action) values('updated');endelse if (exists (select 1 from inserted) and not exists (select 1 from deleted))begininsert into log(action) values('inserted');endelse if (not exists (select 1 from inserted) and exists (select 1 from deleted))begininsert into log(action) values('deleted');end go --test insert into student values('king', 22, 1, 7); update student set sex = 0 where name = 'king'; delete student where name = 'king'; select * from log; select * from student order by id; 24、游標的使用

游標提供了一種對從表中檢索出的數據進行操作的靈活手段

其必須有4個組成部分

聲明游標

打開游標

從一個游標中查找信息

關閉游標

use HB--創建游標 GO declare cur cursor for select * from 密碼錯誤 order by 手機號 desc --for read only --創建只讀游標 --for update --更新游標 open cur--打開游標 fetch next from cur while @@fetch_status=0 beginfetch next from cur end close cur--關閉游標 deallocate cur--釋放游標--將查詢到的數據fetch 進變量 GO declare cur cursor for select * from 密碼錯誤 order by 手機號 desc open cur--打開游標 declare @手機號 varchar(20),@服務密碼 varchar(20),@登錄密碼 varchar(20),@支付密碼 varchar(20),@金額 int,@個數 int,@總金額 int fetch next from cur into @手機號,@服務密碼,@登錄密碼,@支付密碼,@金額,@個數,@總金額 while @@fetch_status=0 beginprint @手機號fetch next from cur into @手機號,@服務密碼,@登錄密碼,@支付密碼,@金額,@個數,@總金額end close cur--關閉游標 deallocate cur--釋放游標--設計帶滾動的數據查詢 GO declare cur scroll cursor for select * from 密碼錯誤 order by 手機號 desc open cur--打開游標 fetch next from cur fetch prior from cur --前一行 fetch first from cur fetch last from cur--最后一行 fetch absolute 2 from cur-- 絕對排序的第二行 fetch relative 2 from cur --從當前游標數下面第2行,同樣有-2之類的 close cur--關閉游標 deallocate cur--釋放游標--使用游標更新數據 --利用 where current of cur 來操作當前行 GO declare cur scroll cursor for select * from 密碼錯誤 order by 手機號 desc for update of 個數 --只允許更新個數 open cur--打開游標 fetch next from cur update 密碼錯誤 set 個數=3 where current of cur --同樣可以用 delete fetch first from cur close cur--關閉游標 deallocate cur--釋放游標--利用索引改變游標中行的順序,利用索引先排好序,再操作 --建立索引 create index index1 on 密碼錯誤(手機號 desc) GO declare cur scroll cursor for select * from 密碼錯誤 with (index(index1))--那么里面就不能再用排序了 open cur--打開游標 fetch next from cur close cur--關閉游標 deallocate cur--釋放游標

25、分布式查詢

分布式查詢可以訪問來自多種異類數據源的數據,而這些數據可存儲在相同或不同的計算機上。鏈接服務器要做的工作是:配置好連接服務器的名字、相應的位置和登錄信息,以便SQL SERVER 可以存取鏈接服務器上的數據。

use HB /* --建立鏈接服務器 exec sp_addlinkedserver @server='hblk',--注意, @srvproduct='SQL Server' */--查看鏈接服務器 --exec sp_linkedservers--刪除鏈接服務器,這里和刪除視圖等不一樣 --exec sp_dropserver 'hblk' --建立映射登錄 /* go sp_addlinkedsrvlogin 'aaa',--遠程服務器名字 'false', 'sa', --本地登錄 'ruser',--遠程登錄用戶名 'rpaw'--密碼 */--查詢映射登錄 --exec sp_helplinkedsrvlogin--刪除映射登錄 --exec sp_droplinkedsrvlogin --'遠程服務器名', --'sa'--設置鏈接選項,這里是設置數據訪問屬性為true,其余的同樣可以通過后兩位來進行設置 /* go exec sp_serveroption 'hblk', 'data access', true */
建立好了與外部數據源的鏈接后,SQL Server 就可以在查詢中引用外部數據了。其和本地查詢類似

這個功能,我以前建立鏈接服務器,用作業來操作數據的時候,是有用過的。

use HB--簡單查詢 --select * from [服務器名].[數據庫名].[所有者名].[表名]--利用OpenDatasource()查詢 --利用它來代替服務器名,當然還有其它用途,這個還不知道--用OpenQuery查詢 --select * from openquery(hblk,'select * from [數據庫名].[所有者名].[表名]')--OpenRowSet() --select * from openrowset('sqloledb','hblk';'sa''....)不確定怎么用--分布式事務處理 set xact_Abort on begin distributed transaction --開始事務 update 密碼錯誤 set 金額=10 update [服務器名].[數據庫名].[所有者名].[表名] set ... commit transaction --提交事務



























總結

以上是生活随笔為你收集整理的数据库语句的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

精品国产视频一区 | 亚洲视频在线观看 | 日本久久综合视频 | 久久www免费视频 | 精品一区二区免费在线观看 | 国内99视频 | 特级黄色一级 | 国产精品久久久久久久久久久久午夜 | 最近中文字幕在线播放 | 亚洲专区在线播放 | 亚洲综合五月 | 97超碰在线免费 | 亚洲欧美视频在线播放 | 久久99国产一区二区三区 | 亚洲春色成人 | 色欲综合视频天天天 | 久久综合九色综合欧美狠狠 | 国产精品久久久久久久久久三级 | 国产精品一区二区三区视频免费 | 亚洲高清视频一区二区三区 | 中文字幕久久精品亚洲乱码 | 国内综合精品午夜久久资源 | 久久夜视频 | 欧美精品三级 | 亚洲国产精品一区二区久久,亚洲午夜 | 久久久伦理 | 91人人爽人人爽人人精88v | 国产精品爽爽久久久久久蜜臀 | 毛片的网址 | 久久成人在线 | 91精品中文字幕 | 狠狠躁日日躁 | 成人观看 | 超级碰视频 | 久久99久久99精品免观看软件 | 婷婷综合成人 | 亚洲在线成人精品 | 香蕉视频国产在线 | 91麻豆精品国产91久久久久久 | 免费在线观看a v | 久久久久久免费视频 | 91精品国产91久久久久久三级 | 一区二区视频在线播放 | 中文字幕有码在线播放 | 在线午夜| 综合色婷婷| 亚洲最大激情中文字幕 | 夜夜看av | 国产日韩欧美在线观看视频 | 97色资源| 99热国产在线中文 | 成人在线视频观看 | 婷婷六月色 | 欧美黑人巨大xxxxx | 麻豆精品在线视频 | 久久久久久国产一区二区三区 | 久久综合免费视频影院 | 五月天亚洲综合 | 狠狠网亚洲精品 | 99久久精品国产一区二区三区 | 久久免费精品国产 | 91免费观看视频网站 | 69中文字幕 | 国产在线传媒 | 福利视频一区二区 | 88av网站| 91视频免费国产 | 91爱爱网址| 亚洲国产精品999 | av久久久 | 国产美女黄网站免费 | 日韩免费成人 | 婷婷网址 | 国产亚洲精品久 | 日批网站在线观看 | 国产在线观看免费av | 国产亚洲精品bv在线观看 | 成人久久精品 | 99r在线| 亚洲好视频 | 久久国产精品一区二区 | 激情综合网色播五月 | 黄色大片av| 99久久精 | 激情九九 | 日韩免费电影网 | 国产aa免费视频 | 日本最大色倩网站www | 99热在线免费观看 | 91麻豆产精品久久久久久 | а天堂中文最新一区二区三区 | 日韩手机在线 | 久草在线这里只有精品 | 亚洲第一av在线播放 | 精品在线视频播放 | 久久中国精品 | 日韩亚洲欧美中文字幕 | 一区二区三区国产欧美 | bbbbb女女女女女bbbbb国产 | 午夜精品麻豆 | 黄色大全视频 | 天天色 天天 | 在线免费91 | 欧美性大战久久久久 | 国产精品久久一区二区无卡 | 欧美日视频 | 97超碰在线免费 | 日本三级人妇 | 最新超碰 | 日韩欧美在线综合网 | 精品在线二区 | 成年人免费观看国产 | 99 久久久久 | 亚洲精品美女在线 | 在线视频91 | 99色在线观看 | 日韩av电影网站在线观看 | 国产精品美女免费看 | 国产午夜精品一区二区三区在线观看 | 六月婷婷久香在线视频 | 五月婷婷激情五月 | 亚洲日日射 | a在线v| 亚洲国产偷 | 婷婷国产一区二区三区 | 国产一级免费在线观看 | 日韩精品一区二区三区不卡 | 不卡电影一区二区三区 | 精品国产一区二区三区久久 | 五月综合久久 | 精品在线观看一区二区 | 视频三区在线 | 国产成人久久久77777 | 午夜国产一区二区三区四区 | 黄色av免费电影 | 国内精品福利视频 | 人人添人人澡人人澡人人人爽 | 成人国产精品久久久久久亚洲 | 狠狠狠色丁香综合久久天下网 | 99精品一区二区 | 欧美综合色| 国产自产高清不卡 | 国产精品自产拍 | 6699私人影院 | 日韩视频一区二区三区在线播放免费观看 | 免费观看黄 | 久久久久久久久久久成人 | av免费成人| 精品欧美一区二区精品久久 | 国产精品18久久久久白浆 | 中文字幕在线观看视频一区二区三区 | 成人黄大片视频在线观看 | 丁香六月久久综合狠狠色 | 亚洲精品国产自产拍在线观看 | 99视频播放 | 最新三级在线 | 99久久精品国产欧美主题曲 | 日韩电影在线观看一区 | 国产亚洲精品久久久久久移动网络 | www狠狠| 91在线视频观看免费 | 97免费视频在线 | 韩国av三级| 日本在线中文在线 | 精品国产一区二区三区久久久蜜臀 | 久久久久久久久免费视频 | 处女av在线| 国产亚洲欧美精品久久久久久 | 欧美色婷 | 国产一区二区三区 在线 | 911香蕉 | 免费久久99精品国产婷婷六月 | 久久爱导航 | 亚洲黄色一级大片 | 久久曰视频 | 福利视频第一页 | 涩涩网站在线看 | 国产一区私人高清影院 | 九九九免费视频 | 黄色在线免费观看网站 | 国产综合精品久久 | 91黄色成人 | 五月婷在线播放 | 色的网站在线观看 | 天天色天天操综合 | 午夜在线观看一区 | av黄色在线 | 日韩性色| 久久久久综合 | 日韩视频免费观看高清完整版在线 | 成人av在线电影 | 国产a视频免费观看 | www.com久久久 | 国产午夜精品一区二区三区 | 亚洲伊人av | 久久人人爽爽 | 国产精品av免费在线观看 | 日躁夜躁狠狠躁2001 | 丁香九月激情综合 | 国产不卡精品 | 99久久成人| 久久精品日韩 | 97超碰人人爱 | 西西大胆免费视频 | www日日夜夜| 97免费| 日日碰狠狠躁久久躁综合网 | 又黄又爽的视频在线观看网站 | 精品1区2区 | 久久婷亚洲五月一区天天躁 | 黄色一级片视频 | 午夜av电影院 | 日韩高清精品一区二区 | 国产精品美女 | 国产伦精品一区二区三区照片91 | 国产一区高清在线 | 欧美日韩亚洲第一 | 国产精品久久久久久久久毛片 | 97国产大学生情侣酒店的特点 | 国产日韩欧美精品在线观看 | 国产精品美女久久久久久久久 | 国产精品美女久久久久久久 | 99热只有精品在线观看 | 国产一区网 | av免费在线免费观看 | www.com.黄| 97视频在线免费观看 | 国内精品久久久久久久影视麻豆 | 亚洲免费精彩视频 | 久久影视网| 一级免费观看 | 欧美日韩另类在线 | 91视视频在线直接观看在线看网页在线看 | 精品免费视频 | 999男人的天堂 | 又黄又刺激又爽的视频 | 国产又粗又硬又爽的视频 | 久久乐九色婷婷综合色狠狠182 | 国产白浆视频 | 中文字幕色婷婷在线视频 | 免费v片| 一级一片免费视频 | 色狠狠久久av五月综合 | www日韩| 六月婷色 | 天天操天天干天天操天天干 | 欧美韩日精品 | 成人在线播放视频 | 欧美91精品久久久久国产性生爱 | 亚洲精品成人免费 | 人人dvd| 中文字幕 国产视频 | 九色精品 | 一区二区三区在线免费播放 | 精品久久久久久电影 | 91新人在线观看 | 中文字幕在线一二 | 亚欧日韩av| 国产一区二区高清不卡 | 日韩精品一区二区在线观看 | 99草视频在线观看 | 亚洲一级片在线观看 | 四虎在线视频免费观看 | 国产一区二区三区免费在线观看 | 另类老妇性bbwbbw高清 | 日本性xxxxx 亚洲精品午夜久久久 | 精品一区二区三区久久久 | 五月天激情婷婷 | 一区二区三区四区五区六区 | 亚洲成人第一区 | www.激情五月.com | 国产一级片免费观看 | 丝袜一区在线 | 国产色女 | 国产成人高清在线 | 日韩大陆欧美高清视频区 | 久久久黄色 | 91免费日韩 | 亚洲精品日韩在线观看 | 黄色片视频免费 | 天天操狠狠操夜夜操 | 91精品欧美| 丰满少妇对白在线偷拍 | 亚洲综合成人专区片 | 久久污视频 | 91视频在线国产 | 99福利影院| 美女免费视频网站 | 91专区在线观看 | 97在线视频免费观看 | 91免费黄视频 | 亚洲九九九在线观看 | 中文字幕首页 | 亚洲精品在线观看视频 | 欧美成人h版在线观看 | 精品亚洲成人 | 久久精品中文字幕一区二区三区 | 国产免费人成xvideos视频 | 国产又粗又猛又黄又爽 | 久久国产一区 | 手机成人在线 | 美女久久 | 中文视频在线播放 | 久久综合射| 99久视频 | wwxxxx日本| 久久久久国产精品一区 | 人人插人人费 | 最近中文字幕国语免费高清6 | 国产特黄色片 | 久久久在线视频 | 免费av黄色 | 国产精品自产拍 | 国产精品18久久久久久久 | 日韩av手机在线观看 | 婷婷色中文字幕 | av电影不卡在线 | 成人三级黄色 | 欧美极品裸体 | 夜色资源网 | 免费av高清 | av电影免费观看 | 天天干天天操天天搞 | 黄网站a| 国产精品乱看 | 天天爽夜夜爽人人爽曰av | www.久久视频 | 美女视频黄频大全免费 | 婷婷国产在线 | www.婷婷色 | 色综合久久88色综合天天免费 | 精品久久网 | 欧美精品久久久久久久免费 | 免费在线国产 | 91av在线不卡 | 国产精品综合久久久久久 | 国产三级精品三级在线观看 | 麻豆小视频在线观看 | 亚洲欧美成人网 | 亚洲毛片久久 | 国产午夜小视频 | 免费高清男女打扑克视频 | 国产成人精品不卡 | 99久久er热在这里只有精品15 | 97视频网址 | 婷婷激情久久 | 9在线观看免费高清完整版 玖玖爱免费视频 | 国产在线a| 久久午夜精品 | 国产福利一区二区在线 | 久久久久久久99 | av高清不卡 | 国产美腿白丝袜足在线av | 99国产精品久久久久久久久久 | 国产精品久久久久久久久久久杏吧 | 91在线观看黄 | 女人久久久久 | 在线视频一区二区 | 色婷婷国产精品一区在线观看 | 久久丁香 | 亚洲精品美女久久 | 欧美精品首页 | 久久99在线 | 亚洲成av人片一区二区梦乃 | 97在线视频免费 | 97久久精品午夜一区二区 | 国产精品成人在线 | 成年人在线免费视频观看 | www.xxx.性狂虐 | 成人午夜片av在线看 | 人人射网站 | 亚洲日本一区二区在线 | 久久99欧美 | 91在线免费观看国产 | 国产精品久久久久9999吃药 | 国产日韩欧美在线一区 | 欧美不卡在线 | 午夜精品久久久99热福利 | 五月婷婷激情六月 | 国产人免费人成免费视频 | 99国产在线视频 | 在线观看视频国产 | 中文字幕免费高清 | 欧美性大战 | 欧美日韩视频 | 在线观看网站你懂的 | 97福利视频 | 国产精品一区二区在线 | 国产精品毛片一区二区 | 午夜色婷婷 | 国产综合在线视频 | 狠狠色伊人亚洲综合网站野外 | 婷婷视频 | 国产一区二区久久 | 亚洲一区二区三区四区精品 | 91久久久久久国产精品 | 999在线精品| 91精品一 | 国产亚洲高清视频 | 操操操人人人 | 国产又粗又长的视频 | 日韩精品一二三 | 深爱五月激情五月 | 久久久久观看 | 三级在线国产 | 国产免费又黄又爽 | 国产精品午夜免费福利视频 | 久久久久久久久久久网 | 99热国内精品 | 97香蕉视频 | 91漂亮少妇露脸在线播放 | 麻豆视频免费在线播放 | 在线观看亚洲a | 色久网| 国产精品久久久一区二区三区网站 | 国产精品久久久久999 | 日日日操操 | 9在线观看免费 | 国产伦精品一区二区三区无广告 | 国产精品嫩草影院99网站 | 国产一级91| 狠狠狠狠狠狠天天爱 | 综合天天| 久久久精品 一区二区三区 国产99视频在线观看 | 日韩天天综合 | 精品久久久国产 | 久久久精品小视频 | 国产丝袜在线 | 国产亚洲免费的视频看 | 99精品久久只有精品 | 日韩av中文| 中文字幕在线网址 | 婷婷视频在线 | 亚洲男人天堂2018 | 日韩欧美成人网 | 日韩色综合 | 看全黄大色黄大片 | 亚洲五月 | 国产色视频网站 | 国产精品美乳一区二区免费 | www.黄色片网站 | av五月婷婷| 91九色porny在线| 亚洲最新视频在线 | 波多野结衣电影一区二区三区 | 天天操天天爱天天干 | 西西4444www大胆视频 | 青青网视频 | 69av视频在线 | 日韩有码专区 | 欧美日韩高清在线一区 | 中文字幕精品三级久久久 | 99色在线观看 | 亚洲 欧美 国产 va在线影院 | 欧美性大战久久久久 | aaa亚洲精品一二三区 | 亚洲精品日韩av | 狠狠干.com| 在线看v片 | 日日日操 | 视频在线国产 | 婷婷色在线播放 | 99久久精品免费看国产四区 | 日韩精品免费一区二区 | 久久精品成人欧美大片古装 | 国产在线观看99 | 97色狠狠| 色综合久久网 | 欧美另类交在线观看 | 精品亚洲免费 | 一级精品视频在线观看宜春院 | 欧美一级日韩三级 | 中文字幕精品视频 | 可以免费观看的av片 | 91在线文字幕| 国产午夜精品理论片在线 | 亚洲精品美女在线观看 | 不卡视频一区二区三区 | www.天天色.com| 国产精品久久久久久久久久久免费 | 久久久 激情| 狠狠激情中文字幕 | 一区中文字幕 | 免费高清无人区完整版 | 久久国产电影院 | 久久成人福利 | 久久精品1区2区 | 福利一区二区在线 | 中文字幕在线视频一区二区三区 | 国产精品21区 | 亚洲综合色网站 | 免费a级黄色毛片 | 91亚洲综合 | 免费观看十分钟 | 国产一级片直播 | 国产成人精品一区二区在线 | 久久激情久久 | 超碰人人射| 精品婷婷| 91av电影 | 成人一级免费视频 | 91一区二区在线 | 1000部国产精品成人观看 | 精品久久精品 | 久久国产精品视频免费看 | 青青河边草观看完整版高清 | 欧美精品乱码久久久久 | 天天综合天天做天天综合 | 国产理论影院 | av夜夜操 | 日韩一区正在播放 | 天天干夜夜夜操天 | www激情com| aaa亚洲精品一二三区 | 狠狠干干 | 日韩在线电影观看 | 中国一级片免费看 | av解说在线 | 国产精品第52页 | 国产不卡视频在线 | 九色porny真实丨国产18 | 日韩精品久久久久久 | 国产一线二线三线在线观看 | 成人a视频片观看免费 | 99国产一区 | 亚洲乱码一区 | 中文字幕在线视频一区二区三区 | 欧洲一区二区三区精品 | 日韩欧美国产激情在线播放 | 国产视频1 | 伊人射| 亚洲女欲精品久久久久久久18 | 国产日韩精品一区二区三区在线 | 午夜精品久久 | 亚洲一二三久久 | 97碰在线 | 欧美在线a视频 | 亚洲免费av一区二区 | 99精品一区 | 欧美日韩中文在线视频 | 国产精品女人久久久久久 | 国产精品资源在线 | 香蕉视频在线网站 | 99久免费精品视频在线观看 | 一区二区三区影院 | 99理论片 | 日本不卡视频 | 不卡精品 | 精品av在线播放 | 97超碰资源站 | 久久久视屏 | 天天操,夜夜操 | 色香蕉在线视频 | 狠狠网站| 久久综合中文字幕 | 天天激情综合 | 欧美亚洲成人xxx | 不卡的av在线播放 | 激情综合五月婷婷 | 97电影在线看视频 | 久久久精品 一区二区三区 国产99视频在线观看 | 97超碰人人澡 | 亚洲手机av | 久久a久久| 日韩欧美高清在线观看 | 成人理论在线观看 | 国内精品小视频 | 香蕉影院在线观看 | 四虎www. | 亚洲三级黄 | 精品福利视频在线 | 午夜 免费| 在线观看免费91 | 99精彩视频在线观看免费 | 99久久精品午夜一区二区小说 | 夜色成人网 | 在线观看日韩国产 | 黄色官网在线观看 | 国产一区二区日本 | 国产亚洲视频在线免费观看 | 99国产一区二区三精品乱码 | 精品国产一区二区三区四区在线观看 | 亚洲电影毛片 | 日韩在线播放欧美字幕 | 9在线观看免费高清完整 | 国产精品成人一区二区三区吃奶 | 国产一线二线三线性视频 | 亚洲精品视频在线观看免费视频 | 在线观看国产91 | 国产你懂的在线 | 欧美天天射 | 国内免费的中文字幕 | 日韩欧美高清一区二区 | 操操操夜夜操 | 久久久www免费电影网 | 国产视频91在线 | 天天色天天射综合网 | 日韩一二三区不卡 | 亚洲人人av | 日女人免费视频 | 亚洲精品videossex少妇 | 久久99国产精品免费 | 国产视频一 | 日韩免费中文 | 久久综合九色综合97_ 久久久 | 国产一级淫片在线观看 | 在线观看黄av | 草久草久| 中文字幕av在线电影 | 欧美精品久久久久久久久久久 | 天天爱综合 | 在线观看视频三级 | 亚洲午夜久久久久久久久 | 国内精品中文字幕 | 欧美成人黄色片 | 国产成人av网站 | 99热这里只有精品在线观看 | 亚洲精品男人的天堂 | 欧美精品久久人人躁人人爽 | 日韩精品免费 | 国内精品久久久久 | 日本不卡视频 | 18av在线视频 | 久久99久久精品国产 | 深夜免费福利视频 | 黄色片软件网站 | 日韩免费中文 | 嫩模bbw搡bbbb搡bbbb | 成人免费在线看片 | 国产精品免费成人 | 911香蕉 | 国产韩国日本高清视频 | 欧美日韩国产在线 | 久久99精品一区二区三区三区 | 免费中文字幕视频 | 久久免费视频国产 | 久久久久久久久毛片精品 | 成人精品一区二区三区中文字幕 | 91在线欧美 | 久久久精品国产免费观看一区二区 | 久久高清视频免费 | 精品少妇一区二区三区在线 | 欧美日韩国产亚洲乱码字幕 | 一级一片免费看 | 99热在线国产精品 | 免费福利在线播放 | 成人三级黄色 | 欧美一级大片在线观看 | 成人av视屏 | 国产91精品看黄网站 | 久久久久在线观看 | 九九视频免费在线观看 | 欧美孕交vivoestv另类 | 国产小视频在线免费观看 | 国产成人在线观看 | 最新黄色av网址 | 新av在线 | 免费看片网址 | 亚洲年轻女教师毛茸茸 | 国产经典三级 | 日韩欧美视频在线播放 | 国产精品一区二区麻豆 | 麻豆影视在线免费观看 | 亚洲黄色免费观看 | 一本色道久久综合亚洲二区三区 | 一级黄色av | 欧美一级小视频 | 91爱爱视频 | 欧美日韩免费一区 | 亚洲va欧洲va国产va不卡 | 久久精品一区二区三区国产主播 | 亚洲一级二级三级 | 超碰在线资源 | 久久精品久久久久久久 | 激情久久一区二区三区 | 97涩涩视频 | 免费看黄电影 | 日韩毛片久久久 | 国内外成人在线 | 国产高清综合 | 不卡av在线 | 97夜夜澡人人双人人人喊 | 日韩色av色资源 | 国产美女精品视频免费观看 | 97免费在线视频 | 日韩美精品视频 | 国产精品久久久久永久免费 | 成人三级视频 | 午夜美女wwww | 成人午夜电影网站 | 国产福利一区二区三区视频 | 亚洲综合色丁香婷婷六月图片 | 国产精品理论视频 | 最新精品视频在线 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 免费在线观看成人小视频 | 97超级碰碰碰视频在线观看 | 日韩精品一区二区三区水蜜桃 | 精品视频免费看 | 国产成人一区二 | 久久婷婷丁香 | 亚洲永久免费av | 精品国模一区二区 | 91天堂素人约啪 | 5月丁香婷婷综合 | 国产精品a成v人在线播放 | 国产免费一区二区三区最新6 | 久久成人黄色 | 日本久久免费电影 | 日韩精品电影在线播放 | 欧美日韩免费看 | 激情视频区| 黄色三几片 | 999ZYZ玖玖资源站永久 | 黄色一区二区在线观看 | 免费看色网站 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 国产精品久久久久久久毛片 | 青青河边草免费视频 | 99激情网 | av资源在线看 | 天天操天天谢 | 亚洲精品小区久久久久久 | 国产成人av一区二区三区在线观看 | 91久久久国产精品 | 国产精品婷婷午夜在线观看 | 亚洲成人资源在线观看 | 国产精品第二页 | 一区二区三区日韩在线观看 | 伊人一级| 亚洲精品国产自产拍在线观看 | 国产中文字幕视频在线观看 | 在线播放视频一区 | 欧美日一级片 | 国产v在线观看 | 精品国产三级a∨在线欧美 免费一级片在线观看 | 一区二区三区在线观看免费 | 亚洲精品乱码久久久久久写真 | 国产一区二区成人 | 亚洲黄色精品 | 日韩在线视频免费观看 | 欧美日韩性视频在线 | 日日成人网| 精品国产成人av在线免 | 一区二区高清在线 | 在线观看免费国产小视频 | 99视频一区二区 | 97爱爱爱| 国产精品国产亚洲精品看不卡15 | 91爱爱网址 | 亚洲成人中文在线 | 国产亚洲精品精品精品 | 激情综合亚洲 | 久久久免费毛片 | 午夜国产在线观看 | 日日干网| 国产视频在线一区二区 | 五月天色网站 | 日韩av午夜 | 国产高清在线免费视频 | 狠狠干.com | 日韩视频在线不卡 | 久久久久久久久影视 | 成人久久18免费网站图片 | 日韩在线字幕 | 99免费在线观看视频 | 五月天综合激情网 | 激情深爱.com | 免费观看一区二区三区视频 | 日本女人在线观看 | 日韩激情免费视频 | 国产免费片 | 九色琪琪久久综合网天天 | 亚洲精品www久久久 www国产精品com | 午夜在线看片 | 日韩欧美在线观看一区二区 | 在线免费观看一区二区三区 | 亚洲欧美婷婷六月色综合 | 久久久久久久久久福利 | 亚洲理论在线观看电影 | 中文字幕精品www乱入免费视频 | 久久中国精品 | 狠狠激情中文字幕 | 国产黄色精品在线观看 | 天天曰天天爽 | 99热播精品 | 在线日韩亚洲 | 免费观看www小视频的软件 | 91精品视频在线看 | 天天插天天干 | 国产一区二区三区高清播放 | 成人免费观看完整版电影 | 日日爱视频 | 国产精品久久久久aaaa九色 | 天天夜夜亚洲 | 精品久久精品 | 中文字幕在线日本 | 亚州日韩中文字幕 | 久久新| 成人手机在线视频 | 波多野结衣精品 | 久产久精国产品 | 欧美aa一级| 韩日电影在线免费看 | 亚洲狠狠丁香婷婷综合久久久 | 99久久精品无免国产免费 | 在线观看免费视频 | 最近中文字幕免费视频 | 久久久久久久久久久电影 | 日韩一区精品 | 国产精品1区2区在线观看 | 婷婷六月综合亚洲 | 久久久免费看视频 | 欧美日韩视频在线播放 | 亚洲国产精品资源 | 久久精品资源 | 久草在线免费看视频 | 在线观看成人一级片 | 中文字幕免 | 国产精品美女免费看 | 精品国自产在线观看 | 亚洲精品久久久久久久不卡四虎 | 日韩激情视频在线 | 久久精彩 | 欧美aaaxxxx做受视频 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 国产亚洲观看 | 久久久久99精品成人片三人毛片 | 日本中出在线观看 | 国产视频网站在线观看 | 成人国产精品 | 午夜久久精品 | av电影在线不卡 | 永久免费毛片 | 国产在线观看av | 男女免费av | 国产偷国产偷亚洲清高 | 热久久免费国产视频 | 黄色a视频免费 | 国产精品1区2区3区 久久免费视频7 | 在线视频婷婷 | 免费看污的网站 | 国产精品免费看 | 欧美精品乱码久久久久 | 在线观看国产一区二区 | 国产精品久久99综合免费观看尤物 | 在线中文字母电影观看 | 国产视频 亚洲视频 | 三日本三级少妇三级99 | 日产中文字幕 | 97色综合 | 久久av黄色 | www欧美日韩 | 91精品福利在线 | 色夜影院| 亚州欧美视频 | 欧美日韩国产精品一区二区三区 | 久久久99精品免费观看app | 中文在线字幕免费观 | 免费成人黄色 | 国产1区2区3区在线 亚洲自拍偷拍色图 | 日本精品中文字幕在线观看 | 久久综合狠狠综合久久狠狠色综合 | 亚洲午夜久久久久久久久电影网 | 成人在线观看av | 色综合久久精品 | 亚洲 欧美 精品 | 久久久久久久久电影 | 国产精品普通话 | 黄色亚洲免费 | av免费看网站| 久久久久久久免费 | 国产精品男女啪啪 | 在线观看韩日电影免费 | 国产精品嫩草影院123 | 在线观看视频你懂的 | 国产区精品视频 | 天天插狠狠干 | 欧美天堂视频在线 | 亚洲成人黄色av | 久久久久国产精品一区 | 亚洲视频六区 | 婷婷久草 | 亚洲精品国产精品国自产在线 | av最新资源 | 国产精品99久久久久久宅男 | 日韩在线字幕 | 成人97人人超碰人人99 | 亚洲精选99| 在线免费观看国产视频 | 九月婷婷色 | 91成人久久| 99999精品视频 | 国产精品专区在线 | 国产一级淫片免费看 | 欧美性直播 | 顶级bbw搡bbbb搡bbbb | 亚洲最新av在线 | 激情久久五月 | 国产成人久久 | 国产高清在线精品 | 中文字幕免费高清在线 | a黄色一级 | 玖玖国产精品视频 | 精品一区av | 韩日电影在线 | 亚洲美女视频在线 | 欧美va天堂在线电影 | 欧美精品乱码99久久影院 | 国产精品乱码久久久久 | 欧美成年网站 | 欧美人操人 | 狠狠夜夜 | 久久蜜臀一区二区三区av | 国产小视频91 | 亚洲国产精品久久久久婷婷884 | 国产精品福利午夜在线观看 | 99精品在线免费 | 国产精品二区在线观看 | 天天操天天干天天操天天干 | 中文字幕资源网 | 亚洲精品视频在线观看视频 | 久久试看 | 蜜臀av免费一区二区三区 | 日日日日日 | av在线亚洲天堂 | 国产一区二区三区高清播放 | 欧美日韩国产免费视频 | 欧美日韩一区二区在线 | 伊人婷婷久久 | 成人av av在线| 免费看的黄色片 | 中文字幕一区二区三区久久蜜桃 | 国产精品毛片完整版 | 日韩黄色软件 | 精品国产中文字幕 | 九九在线精品视频 | 国产在线精品一区二区不卡了 | 国产精品久久99综合免费观看尤物 | 精品视频99 | 国产精品久久久久久久免费观看 | 久久国产一区 | 国产字幕在线观看 | 日韩欧美精品一区 | 国产精品美女久久久久久久 | 久久久高清 | 成人av一区二区在线观看 | 久久国内精品99久久6app | 国模吧一区 | 日韩精品一区二区三区免费观看视频 | 婷婷九九| 在线视频手机国产 | 黄色软件在线观看免费 | 黄色网www | 久久成人国产精品一区二区 | 成人va天堂 | av免费观看网址 | 午夜国产福利在线 | 免费在线一区二区 | 天天天天色射综合 | 超碰97人人射妻 | 久久伊99综合婷婷久久伊 | 国产精品成人久久久久久久 | 亚洲资源在线观看 | 免费成人在线观看 | 美女久久久久久久久久久 | 91福利在线观看 | 国产色资源 | 久久久国产精品成人免费 | 久久综合精品国产一区二区三区 | 国产视频69 | 国产午夜影院 | 婷五月天激情 | 久热av在线| 91激情视频在线观看 | 99re久久资源最新地址 | 久久线视频 | 久久精品久久99精品久久 | 精品一二区 | 亚洲va综合va国产va中文 | 99热99 | 久久免费在线观看视频 | 日韩三区在线观看 | 人人澡人人添人人爽一区二区 | 久久精品一 | 色狠狠婷婷 | 2020天天干夜夜爽 | 国产精品自在线拍国产 | 亚洲最新av在线网址 | 亚洲黄色一级视频 | 亚洲午夜精品久久久久久久久久久久 | 日韩久久精品一区二区三区下载 | 91成人在线观看喷潮 | 西西444www大胆无视频 | 亚洲视频 中文字幕 | 欧美精品v国产精品v日韩精品 | 日韩午夜精品福利 | 四虎影视av|