事務是將一個或多個T-SQL語句封裝成一個可執行單元交給SQL Server引擎執行,要麼所有語句執行成功,要麼所有語句執行失敗不存在某一條語句執行成功而其它語句為執行成功的現象!
begin transaction
rollback transaction
commit transaction
視圖是保存在數據庫上的select查詢。使用視圖的原因有兩種:
視圖是另一種查看數據庫中一個表或多個表中數據的方法,視圖是一個虛擬表視圖保存的並不是數據值。而是引用表的sql語句
create view view_name
as
<select語句>
drop view view_name
select col_name1,……,col_namen from view_name
索引是某個表中一列或若干列值的集合相應的指向表中物理表示這些值的數據頁的邏輯指針清單
索引是SQL Server 編排數據的內部方法,是檢索表中數據的直接通道
索引的作用是通過索引,大大提高數據庫的檢索速度,改善數據庫的性能
唯一索引:唯一索引不允許兩行具有相同的索引值(創建了唯一索引將自動創建唯一索引)
主鍵索引:在數據庫關系圖中創建某列為主鍵則自動創建主鍵索引,主鍵索引是唯一索引的特殊形態
聚集索引:在聚集索引中,表中的各行的物理順序與鍵值的邏輯順序(索引)相同(如果表中將某列設置主鍵則改列將自動被提升為聚集索引(該表中事先沒有聚集索引))一個表中只能包含一個聚集索引
非聚集索引:非聚集索引建立在索引頁上,當查詢數據時可以從索引中找到記錄存放的位置(非聚集索引是表中各行數據存放的物理順序與鍵值的邏輯順序不匹配聚集索引比非聚集索引有更快的訪問速度。)
符合索引:在創建索引時將多個列組合作為索引,這種索引稱為復合索引(只有用到復合索引的第一列或整個復合索引列作為檢索條件時才會用到復合索引)
全文索引:全文索引是一種特殊類型的基於標記的功能性索引,由SQL Server中全文索引服務創建和維護
create 【unique】 【clustered | nonclustered】 index index_name
on table_name (column_name)[,column_name]……)
【with fillfactor=x】
其中:
unique:指定唯一索引
clustered、nonclustered:指定是聚集索引還是非聚集索引
fillfactor:表示填充因子,指定0~100的值,如指定填充因子的值為80,表示每個葉級頁上將有20%的空間保留為空,以便隨著在基礎表中添加數據而為擴展索引提供空間
drop index table_name.index_name
注意:刪除表示將刪除表中的所有索引
如果要刪除所有索引應先刪除非聚集索引,再刪除聚集索引。
索引實際上就是查詢數據的一種依據方法。索引類型的不同在查詢數據是所依據的方法也就不同。不同的索引類型之間並沒有太過緊密(直接)的關聯!!!