日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

事务,视图及索引!!!

發(fā)布時間:2024/9/5 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 事务,视图及索引!!! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

?

事務(wù)

為什么需要事務(wù)?

? 因為要保證事務(wù)的一致性!!!

事務(wù)的四個屬性:

1.原子性

  事務(wù)是一個完整的操作!

2.一致性

  當事務(wù)完成時,數(shù)據(jù)必須處于一致狀態(tài)!

3.隔離性

  事務(wù)是獨立的!

4.持久性

  持久性是指無論系統(tǒng)發(fā)生什么故障,事務(wù)處理的結(jié)果都是永久的!

這些特性通常簡稱為ACID

執(zhí)行事務(wù)的語法

(1)開始事務(wù)

begin tran

這個語句顯示地標記一個事務(wù)的起始點.

(2)提交事務(wù)

commit tran

這個語句標記事務(wù)成功結(jié)束。

(3)回滾(撤銷事務(wù))

rollback transaction

清除自事務(wù)起始地至該語句所做的所有數(shù)據(jù)更新操作,將數(shù)據(jù)狀態(tài)回滾到事務(wù)開始前,并釋放由事務(wù)控制的資源!

事務(wù)分類

1.顯示事務(wù)

2.隱式事務(wù)

3.自動提交事務(wù)

?示例1:

1 --轉(zhuǎn)賬 2 --在sql中如何開啟事務(wù) 3 begin tran 4 declare @errorsum int 5 set @errorsum=0 6 update Bank set cardBalance-=49000 7 where cradId=1 8 9 --記錄錯誤號 10 set @errorsum+=@@ERROR 11 12 update Bank set cardBalance+=49000 13 where cradId=2 14 15 set @errorsum+=@@ERROR 16 if(@errorsum>0) 17 begin 18 --數(shù)據(jù)回滾,其中一個操作時錯誤的,事務(wù)整體都會回滾 roolback 19 rollback tran 20 end 21 else 22 begin 23 --提交 commit 24 commit tran 25 end


視圖

?

?視圖是保持在數(shù)據(jù)庫中的select查詢.

?

為什么需要視圖?

  為保證數(shù)據(jù)庫中數(shù)據(jù)的安全.

什么是視圖?

  視圖是另一種查看數(shù)據(jù)庫中一個或多個表中數(shù)據(jù)方法

  視圖充當著查詢中指定表篩選器.

視圖通常用來進行三種操作:

1.篩選表中的行

2.防止未經(jīng)許可的用戶訪問敏感數(shù)據(jù)

3.將多個物理數(shù)據(jù)表抽象為一個邏輯數(shù)據(jù)表

使用T-SQL語句

創(chuàng)建視圖的語法是:

create view view_name

as

<select 語句>

?如果需要對以創(chuàng)建的視圖進行查詢代碼修改,那么就需要刪除已存在的同名視圖,在重新創(chuàng)建.

刪除視圖

drop view vuew_name

查看視圖

select col_name1,col_name2,..... from view_name

?示例二:

--當前數(shù)據(jù)庫use MySchoolgo--檢測視圖是否存在:視圖記錄存放在系統(tǒng)表sysobjects中if exists(select * from sysobjects where name='vw_student_result')drop view vw_student_resultgo--創(chuàng)建視圖create view vw_student_resultasselect 姓名=studentname,學號=student.StudentNo,成績=Studentresult,課程名稱=Subjectname,考試時間=examdatefrom Studentinner join Result on Student.StudentNo=Result.StudentNoinner join Subject on Result.SubjectId=Subject.SubjectIdwhere Subject.SubjectId=(select SubjectId from Subject where SubjectName='oop')and ExamDate=(select max(ExamDate) from Result,Subjectwhere Result.SubjectId=Subject.SubjectIdand SubjectName='oop')go

注意:

在視圖里存儲的是sql語句,并不是數(shù)據(jù)!

★:索引:是SQL Server編排數(shù)據(jù)的內(nèi)部方法。它為SQL Server提供一種方法來編排查詢數(shù)據(jù)

文章 3萬個字

我愛你

Select? * from Aritcle

Where content like ‘%我愛你%’

★:填充因子

★:索引會降低增刪改效率

單位換算

1G=1024M

1M=1024K

1k=1024(byte)字節(jié)

1byte=8bit

4MB/s???? 512kb/s

?

轉(zhuǎn)載于:https://www.cnblogs.com/superws/p/5266311.html

總結(jié)

以上是生活随笔為你收集整理的事务,视图及索引!!!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。