欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

SQLserver數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

前言:索引,存儲(chǔ)過程和觸發(fā)器可以對(duì)一些高級(jí)的數(shù)據(jù)處理和查詢,從而更好的實(shí)現(xiàn)對(duì)數(shù)據(jù)庫(kù)的操作,診斷和優(yōu)化。

成都創(chuàng)新互聯(lián)公司是一家專業(yè)從事成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、網(wǎng)頁(yè)設(shè)計(jì)的品牌網(wǎng)絡(luò)公司。如今是成都地區(qū)具影響力的網(wǎng)站設(shè)計(jì)公司,作為專業(yè)的成都網(wǎng)站建設(shè)公司,成都創(chuàng)新互聯(lián)公司依托強(qiáng)大的技術(shù)實(shí)力、以及多年的網(wǎng)站運(yùn)營(yíng)經(jīng)驗(yàn),為您提供專業(yè)的成都網(wǎng)站建設(shè)、營(yíng)銷型網(wǎng)站建設(shè)及網(wǎng)站設(shè)計(jì)開發(fā)服務(wù)!


一.索引

 索引提供指針以指向存儲(chǔ)在表中指定的數(shù)據(jù)值,數(shù)據(jù)庫(kù)的索引,就好比一本書中的目錄類似,無(wú)需閱讀整個(gè)一本書,利用目錄就可以快速的查找所需信息。在數(shù)據(jù)庫(kù)中,索引使數(shù)據(jù)庫(kù)程序無(wú)需對(duì)整個(gè)表進(jìn)行掃描,就可以在其中找到所需數(shù)據(jù)。通過使用索引,可以大大提高數(shù)據(jù)庫(kù)的查詢速度

 (1) 索引分類

   1.唯一索引

   唯一索引不允許兩行具有相同索引值

   2.主鍵索引

   在數(shù)據(jù)庫(kù)關(guān)系圖中為表定義一個(gè)主鍵將自動(dòng)創(chuàng)建主鍵索引,主鍵索引是唯一索引的特殊類型

   3.聚集索引

   在聚集索引中,表中各行的物理順序與鍵值的邏輯(索引)順序相同

   4.非聚集索引

   非聚集索引建立在索引頁(yè)上,在查詢數(shù)據(jù)時(shí)可以從索引中找到記錄存放位置

   5.復(fù)合索引

   在創(chuàng)建索引時(shí),并不是只能對(duì)其中一列創(chuàng)建索引,與創(chuàng)建主鍵一樣,可以將多個(gè)列組合作為索引,這種索引稱為復(fù)合索引

 

 (2)創(chuàng)建和使用索引

1、首先創(chuàng)建一個(gè)數(shù)據(jù)量大的表,名稱為“學(xué)生表”,分別有三列,學(xué)號(hào),姓名和班級(jí),如下圖所示,學(xué)號(hào)為自動(dòng)編號(hào),班級(jí)為默認(rèn)值“一班”。

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

2、向表中插入大量數(shù)據(jù),數(shù)據(jù)越多,驗(yàn)證索引的效果越好。

使用語(yǔ)句完成:While 1>0  Insert into t388(姓名)  values(‘小明’)

上面語(yǔ)句是一個(gè)死循環(huán),除非強(qiáng)制結(jié)束,如果1大于0就會(huì)一直向表中插入姓名

如下圖所示:


SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

3,等待5分鐘左右,打開表的屬性,查看表的行數(shù),當(dāng)前為1,如下圖所示:713179


SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念


4,使用語(yǔ)句查詢第600000行的數(shù)據(jù),Select * from t388 Where 學(xué)號(hào)=600000

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

5、打開“sql server profiler ”工具進(jìn)行跟蹤,如下圖所示:

打開“sql server profiler ”工具查看跟蹤的信息,發(fā)現(xiàn)查詢時(shí)間很長(zhǎng),cpu工作了188毫秒,reads:讀了6614次,writes:寫了9次,duration:總計(jì)花費(fèi)2977毫秒完成查詢。

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

6,開始創(chuàng)建索引(唯一索引)

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念


點(diǎn)擊確定,完成創(chuàng)建,再次使用語(yǔ)句查詢第600020行的數(shù)據(jù),Select * from t388 Where 學(xué)號(hào)=600020

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

這是唯一索引創(chuàng)建。主鍵索引不用創(chuàng)建,把列設(shè)置為表的主鍵,自動(dòng)生成主鍵索引

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念


二,存儲(chǔ)類型

  

   (1) 存儲(chǔ)過程是sql語(yǔ)句和控制語(yǔ)句的預(yù)編譯集合,保存在數(shù)據(jù)庫(kù)中,可由應(yīng)用程序執(zhí)行,而且允許用戶聲明變量,邏輯控制語(yǔ)句和強(qiáng)大的編程功能

    使用存儲(chǔ)過程的好處:

        1.模塊化程序設(shè)計(jì)

      2.執(zhí)行速度快,效率高

      3.減少網(wǎng)絡(luò)流量

      4.具有很好的安全性

   (2)系統(tǒng)存儲(chǔ)過程

      sql-server提供了很多的系統(tǒng)存儲(chǔ)過程,他們是一組預(yù)編譯的T-SQL語(yǔ)句,系統(tǒng)存儲(chǔ)過程提供了管理數(shù)據(jù)庫(kù)和更新表的機(jī)制,并充當(dāng)從系統(tǒng)表中檢索信        息的快捷方式。

           常用的系統(tǒng)存儲(chǔ)過程

           sp_database列出服務(wù)器上的所有數(shù)據(jù)庫(kù)的信息,包括數(shù)據(jù)庫(kù)名和數(shù)據(jù)大小

           sp_helpdb報(bào)告有關(guān)指定數(shù)據(jù)庫(kù)或所有數(shù)據(jù)庫(kù)的信息

           sp_renamedb更改數(shù)據(jù)庫(kù)的名稱

           sp_tables返回當(dāng)前環(huán)境下可查詢的表和視圖的信息

           sp_columns返回某個(gè)表和視圖的列信息,包括列的數(shù)據(jù)類型和長(zhǎng)度等

           sp_help查看某個(gè)數(shù)據(jù)庫(kù)對(duì)象的信息:如列名,主鍵,約束,外鍵,索引等

           sp_helpconstraint查看某個(gè)表的索引

           sp_stored_procedures顯示存儲(chǔ)過程的列表

           sp_password添加或修改登錄賬戶的密碼

           sp_helptext顯示默認(rèn)值,未加密的存儲(chǔ)過程,用戶定義的存儲(chǔ)過程,觸發(fā)器或視圖的實(shí)際文本

 

            使用T-SQL語(yǔ)句調(diào)用執(zhí)行存儲(chǔ)過程的語(yǔ)法如下:

             EXEC存儲(chǔ)過程名 [參數(shù)值]

                 其中EXEC時(shí)execute的簡(jiǎn)寫


    (3)使用系統(tǒng)存儲(chǔ)過程,以查詢數(shù)據(jù)庫(kù)大小的 sp_database 為例,以上的都是以下格式來執(zhí)行

    SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

 (4)擴(kuò)展存儲(chǔ)過程

    語(yǔ)法:EXEC xp_cmdshell DOS命令 {no_output}


    若xp_cmdshell作為服務(wù)器安全配置的一部分而被關(guān)閉,請(qǐng)用以下語(yǔ)句開啟:

       

   

   exec sp_configure 'show advanced options',1  --顯示高級(jí)配置信息

   go 

   reconfigure   --重新配置

   go

    exec sp_configure 'xp_cmdshell',1

   go

   reconfigure   -- 重新配置

   go

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

以在C盤創(chuàng)建一個(gè)bene的文件夾為例

exec xp_cmdshell 'mkdir c:\bene',no_output

 SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

 

(5)自定義存儲(chǔ)過程

         在sql-server中,用于創(chuàng)建處處過程的sql語(yǔ)句為create procedure,所有的存儲(chǔ)過程都存放在當(dāng)前數(shù)據(jù)庫(kù)中。一個(gè)完整的存儲(chǔ)過程都包含以下三        部分

          1.輸入?yún)?shù)和輸出參數(shù)

          2.在存儲(chǔ)過程中執(zhí)行的T-SQL語(yǔ)句

          3.存儲(chǔ)過程的返回值

   自定義存儲(chǔ)過程

   以編寫求網(wǎng)絡(luò)管理平均分存儲(chǔ)過程為例

IF EXISTS(SELECT * FROM SYSOBJECTS WHERE name = 'usp_GetAverageResult') 

DROP PROCEDURE usp_GetAverageResult

GO

CREATE PROCEDURE usp_GetAverageResult

AS

DECLARE @subJectID nvarchar(4)

SELECT @subJectID=subJectID FROM dbo.TSubject WHERE subJectName='網(wǎng)絡(luò)管理'

DECLARE @avg decimal(18,2)

SELECT @avg=avg(mark) from dbo.TScore where subJectID=@subJectID

PRINT '網(wǎng)絡(luò)管理專業(yè)平均分是:'+CONVERT(VARCHAR(5),@avg)

go

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

上述代碼主要理解創(chuàng)建存儲(chǔ)過程的語(yǔ)法,其中涉及的變量及判斷語(yǔ)句等無(wú)需深究,只要能根據(jù)語(yǔ)句理解就可,有興趣可以查看資料自學(xué)



三,觸發(fā)器

  觸發(fā)器是一種特殊的存儲(chǔ)過程,當(dāng)表中的數(shù)據(jù)發(fā)生更新時(shí)將自動(dòng)調(diào)用,以響應(yīng)INSERT,UPDATE,DELETE語(yǔ)句

  (1)觸發(fā)器類型
        INSERT觸發(fā)器:當(dāng)向表中插入數(shù)據(jù)是觸發(fā),自動(dòng)執(zhí)行所定義語(yǔ)句

        UPDATE觸發(fā)器:當(dāng)更新表中某列,多列時(shí)觸發(fā),自動(dòng)執(zhí)行所定義語(yǔ)句

        DELETE觸發(fā)器:當(dāng)刪除表時(shí)觸發(fā),自動(dòng)執(zhí)行所定義語(yǔ)句


 (2)創(chuàng)建觸發(fā)器

       使用T-SQL語(yǔ)句創(chuàng)建

語(yǔ)句:CREATE TRIGGER [觸發(fā)器名稱]

      ON [需要?jiǎng)?chuàng)建觸發(fā)器的表]

     FOR ([DELETE,INSERT,UPDATE)

     AS SQL 語(yǔ)句

      以當(dāng)有人試圖在表中更改數(shù)據(jù)時(shí),將提示一條消息并阻止操作為例,以下語(yǔ)句可實(shí)現(xiàn):

create trigger reminder --定義觸發(fā)器名稱為“reminder”

on dbo.TScore --在哪個(gè)表執(zhí)行,此例在“dbo.Tscore”表中

for UPDATE --指定在表中執(zhí)行那些數(shù)據(jù)修改語(yǔ)句時(shí)激活觸發(fā)器,可以指定多個(gè),用,分隔。此例為“UPDATE”

as

print '禁止修改,請(qǐng)聯(lián)系DBA'   --觸發(fā)時(shí)顯示的文字

ROLLBACK TRANSACTION

GO

SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念SQLserver 數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念

網(wǎng)站欄目:SQLserver數(shù)據(jù)庫(kù)的索引,存儲(chǔ)過程和觸發(fā)器的使用與概念
分享網(wǎng)址:http://aaarwkj.com/article2/jjgpic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、定制開發(fā)品牌網(wǎng)站設(shè)計(jì)、做網(wǎng)站、品牌網(wǎng)站建設(shè)、響應(yīng)式網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

營(yíng)銷型網(wǎng)站建設(shè)
亚洲激情av在线观看| 国产精品一区二区精品| 国产午夜三级视频在线观看| 国产精品久久亚洲一区二区| 亚洲一区二区日韩在线| 少妇精品久久久一区二区三区 | 成熟女人毛茸茸的视频| 免费啪啪视频一区二区| 麻豆av久久一区二区| 欧美一区二区三区精美| 一区二区三区欧美日| 久草免费福利视频资源站| 五月天亚洲综合小说网| 人妻少妇精品视频二区| 亚洲另类偷拍校园伦理| 韩国三级网站在线观看视频| 国产日韩精品激情另类综合 | 青青草原一区在线观看| 校园春色亚洲一区二区| 国产日产精品一区二区三区四区| 成人爱爱视频免费观看| 欧美大吊视频在线观看| 日本熟熟妇丰满人妻啪啪| 欧美伊人色综合久久天天| 国产成人亚洲精品另类动态| 国产亚洲高清国产拍精品| 国产一区二区黄色录像| 亚洲中文无码亚洲人vr在线| 黄色录像一级二级三级| 日本加勒比在线播放一区| 好吊妞在线新免费视频| 日韩欧美亚洲福利在线| 国产精品久久黑丝诱惑| 成人免费大片在线观看视频| 91在线免费观看日本| 日本亚洲一区二区在线观看| 国产成人+亚洲欧洲综合| 久久人妻一区二区三区免费密臀| 国产综合亚洲欧美日韩在线| 九九热这里只有免费视频| 91久久高清国语自产拍|