廢話不多說,直接上乾貨 14:13:23 事務 概括:事務是一種機制,一個操作序列,包含一組資料庫操作命令,並且把所有的命令作為一個整體一起 向系統提交或撤銷操作 請求。 事務的特性: 1.原子性:事務是一個完整的操作,事務的各元素都是不可分的(原子的)。事務中的一組命令要麼都執行,要麼都不執 行。 ...
廢話不多說,直接上乾貨 14:13:23
事務
概括:事務是一種機制,一個操作序列,包含一組資料庫操作命令,並且把所有的命令作為一個整體一起 向系統提交或撤銷操作
請求。
事務的特性:
1.原子性:事務是一個完整的操作,事務的各元素都是不可分的(原子的)。事務中的一組命令要麼都執行,要麼都不執
行。
2.一致性:當事務完成時,數據必須處於一致狀態。也就是說,在事務開始之前,資料庫中存儲的數據處於一致狀態。在
正在進行的事務中,數據可能處於不一致的狀態。但是,當事務成功完成時,數據必須再次回到已知的一致狀態。
3.隔離性:對數據進行修改的所有併發事務是彼此隔離的,這表明事務必須是獨立的,它不應以任何方式依賴於或影響其
他事務。
4.持久性:事務的持久性指不管系統是否發生了故障,事務處理的結果都是永久的。
以上四個特性簡稱“ACID”特性
語法:
1.開始事務: begin transaction 這個語句顯式的標記一個事務的起始點。
2.提交事務: commit transaction 這個語句標誌一個事務成功結束。
3.回滾(撤銷)事務:rollback transaction 清除自事務起始點至該語句所做的所有數據更新操作,將數據狀態回滾
到事務開始之前。
事務分類:
1.顯式事務:用begin transaction明確指定事務的開始
2.隱式事務:通過設置set implicit_transactions on語句,將隱式事務模式設置為打開。當以隱式事務操作時,不需要
指定事務的開始,只要提交或回滾每個事務就行了,SQL Server在提交或回滾事務後自動啟動新事務。
3.自動提交事務:SQL Server的預設模式。它將每條單獨的T-SQL語句看為一個事務,如果成功執行,就自動提交,否
則自動回滾。
視圖
概括:視圖是保存在資料庫中的select查詢,是另一種查看資料庫中一個或多個表中數據的方法。視圖是一種虛擬表,通常是作
為來自一個或多個表的行或列的子集創建的。
作用:
1.篩選表中的行。
2.防止未經許可的用戶訪問敏感數據。
3.將多個物理數據表抽象為一個邏輯數據表。
操作:
1.創建語法:create view (視圖名字,多為view開頭)
as
<select 語句>
2.刪除語法:drop view (視圖名字,多為view開頭)
3.查詢視圖是否存在:exists(select * from sysobjects where name='(視圖名字,多為view開頭)')
4.查看視圖數據:select 列名,列名 from (視圖名字,多為view開頭)
註意事項:
1.每個視圖中可以使用多個表。
2.與查詢相似,一個視圖可以嵌套另一個視圖,但最好不要超過3層。
3.視圖中的select語句不能包括以下幾種:
a.order by子句,除非在select語句的選擇列表中也有一個top子句。
b.into關鍵字。
c.引用臨時表或表變數。
索引
概括:索引是SQL serv編排數據的內部方法,是檢索表中數據的直接通道。
索引頁是資料庫中存儲索引的數據頁。索引頁存放檢索數據行的關鍵字頁及該數據行的地址指針。
作用:索引的作用是通過使用索引,大大提高資料庫的檢索速度,改善資料庫性能。
分類:
1.唯一索引:唯一索引不允許兩行具有相同的索引值。
2.主鍵索引:在資料庫關係圖中為表定義一個主鍵將自動創建主鍵索引,主鍵索引是唯一索引的特殊類型。
3.聚集索引:在聚集索引中,表中各行的物理順序與鍵值的邏輯(索引)順序相同。一個表只能有一個聚集索引。
4.非聚集索引:非聚集索引建立在索引頁上,當查詢數據時可以從索引中找到記錄存放的位置。一個表可以有多個非聚集
索引。
5.複合索引:在創建索引時,並不是只能對其中一列創建索引,與創建主鍵一樣,可以將多個列組合作為索引,這種索引
稱為複合索引。
6.全文索引:全文索引時一種特殊類型的基於標記的功能性索引,由SQL Server中全文引擎服務創建和維護。
語法:
1.創建索引:create [unique] [clustered | nonclustered] index (索引名稱,多為index開頭)
on (表名)((列名))
[with fillfactor = x]
介紹:unique指定唯一索引,可選。clustered | nonclustered指定是聚集索引還是非聚集索引,可
選。fillfactor 表示填充因數,是一個0-100的值,指示索引頁填滿的空間所占的百分比。語法
內的中括弧代表可選部分。
2.刪除索引:drop index (表名).(索引名稱)
註意事項:a.刪除表時,該表的所有索引將同時被刪除。
b.如果要刪除表的所有索引,則先要刪除非聚集索引,再刪除聚集索引。
--以上
ps:如有不正之處,歡迎提出。 16:18:26