-------------------------------------------------------事物--------------------------------------------------------------開始事物
begin transaction
提交事物
commit transaction
回滾事物
rollback transaction
一般是用系統變量 獲得是否有錯誤的存在
把@@error的值 累加到局部變量 @error里
最后判斷@error是否為0為0 表示沒有錯誤? 可以提交事物
不為0表示有錯誤 事物回滾
-------------------------------------------------------視圖--------------------------------------------------------------
視圖是虛擬表
我們一般只在視圖上做查詢
視圖的名稱的起法 最好是view_數據庫名_表名(或是一個使用這個視圖人的名)
視圖說明 也是放在 本數據庫的sysObjects 里 通過name進行查找
創建視圖
create view 視圖名
as
select語句 (可以在這里把列的名字 通過as ,=改成自己喜歡的中文)
go
刪除視圖??? drop view 視圖名
視圖里存放的是sql語句
使用視圖的方法 select * from 視圖名? (如果列名在上面被改了,這里查詢時候就用改了后的)
-------------------------------------------------------索引--------------------------------------------------------------
索引是sql server編排數據的內部方法,它為sql server提供一種方法來編排查詢數據的路由
列的類型為 text,image,bit 的不能創建索引
查詢的時候一般不需要人工指定使用哪個索引查尋 sql會根據所創的索引自動優化
缺點:會降低增加 ,刪除的速度,需要更多的存儲空間
聚集索引 clustered? Index
唯一索引 unique? Index
非聚集索引? NoNclustered? Index
創建了唯一約束,將會自動創建唯一索引,設置為主鍵,該列就默認為聚集索引
聚集索引一個表只能一個,非聚集索引一個表可以多個