LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

在sql server中怎么理解索引、視圖

admin
2012年1月14日 17:33 本文熱度 2855
1.索引
索引是一個(gè)單獨(dú)的,物理的數(shù)據(jù)庫(kù)結(jié)構(gòu),它是某個(gè)表中一列或若干列值的集合和相應(yīng)的指向表中物理標(biāo)志這些值的數(shù)據(jù)頁(yè)的邏輯指針清單.索引是依賴于表建立的,它提供了數(shù)據(jù)庫(kù)中編排表中數(shù)據(jù)的內(nèi)部方法.一個(gè)表的存儲(chǔ)是由兩部分組成的,一部分是用來(lái)存放表 的數(shù)據(jù)頁(yè)面,另一部分存放索引頁(yè)面.索引就存放在索引頁(yè)面上.
從某種程度上,可以把數(shù)據(jù)庫(kù)看作一本書(shū),把索引看作書(shū)的目錄,通過(guò)目錄查找書(shū)中的信息,顯然較沒(méi)有目錄的書(shū)方便,快捷.

按照上面的解釋看書(shū)的目錄這個(gè)比喻:
>>它實(shí)際存,占據(jù)了書(shū)的內(nèi)容,紙張
>>它指向?qū)嶋H存在的內(nèi)容。比如要找第一章,那么目錄后面的頁(yè)碼便為
  我們提供了一個(gè)快捷的方法。當(dāng)然對(duì)數(shù)據(jù)庫(kù)來(lái)說(shuō),這些都是透明的我 們不能看到的。但的確提高了數(shù)據(jù)庫(kù)返回給我們查詢結(jié)果的效率。

另外,我們要將它與查詢常用到的order by區(qū)分開(kāi)。前幾天公司里新員工培訓(xùn)曾遇到有的同學(xué)j混淆了。
所謂order by只不過(guò)是將返回的結(jié)果按要求排好順序,方便我們的使用。它對(duì)所在的查詢語(yǔ)句返回給我們結(jié)果是效率或其它方面(除去我們對(duì)結(jié)果的應(yīng)用)是沒(méi)有任何用處的。

另外有一種唯一索引,也就是主鍵(簡(jiǎn)單理解就是一個(gè)表中,如果在某列上建立了唯一索引,則該列不可以有兩個(gè)一樣的記錄出現(xiàn)).
但唯一索引有時(shí)會(huì)使我們插入/修改數(shù)據(jù)效率降低---或說(shuō)就是降低了。只是數(shù)據(jù)量小時(shí)不明顯。因?yàn)槊看尾迦?修改都會(huì)檢查完所有記錄,看是否有該值存在。
>>>>就像要求每個(gè)身份證號(hào)只能一人使用,那么分配一個(gè)身份證號(hào)時(shí)就要檢查一下是否已經(jīng)有人在用這個(gè)身份證號(hào)(當(dāng)然我們現(xiàn)實(shí)中可能已經(jīng)排好了,我們用到哪個(gè),下一個(gè)會(huì)用哪個(gè))

2.視圖
  首先看一下一些標(biāo)準(zhǔn)的說(shuō)法
  視圖是原始數(shù)據(jù)庫(kù)數(shù)據(jù)的一種變換,是查看表中數(shù)據(jù)的另外一種方式。可以將視圖看成是一個(gè)移動(dòng)的窗口,通過(guò)它可以看到感興趣的數(shù)據(jù)。

    視圖是從一個(gè)或多個(gè)實(shí)際表中獲得的,這些表的數(shù)據(jù)存放在數(shù)據(jù)庫(kù)中。那些用于產(chǎn)生視圖的表叫做該視圖的基表。一個(gè)視圖也可以從另一個(gè)視圖中產(chǎn)生。

    視圖的定義存在數(shù)據(jù)庫(kù)中,與此定義相關(guān)的數(shù)據(jù)并沒(méi)有再存一份于數(shù)據(jù)庫(kù)中。通過(guò)視圖看到的數(shù)據(jù)存放在基表中。

    視圖看上去非常象數(shù)據(jù)庫(kù)的物理表,對(duì)它的操作同任何其它的表一樣。當(dāng)通過(guò)視圖修改數(shù)據(jù)時(shí),實(shí)際上是在改變基表中的數(shù)據(jù);相反地,基表數(shù)據(jù)的改變也會(huì)自動(dòng)反映在由基表產(chǎn)生的視圖中。由于邏輯上的原因,有些視圖可以修改對(duì)應(yīng)的基表,有些則不能(僅僅能查


  >>>如果說(shuō)索引是為了效率,那么視圖是為了我們使用的方便。
  >>>視圖實(shí)際存在,能像對(duì)表的應(yīng)用一樣操作(但有限制)
  >>>所謂視圖存在并不它的數(shù)據(jù)存在于視圖中,而中是定義存在。它的數(shù)據(jù)仍存放在原來(lái)數(shù)據(jù)表中。就像你的檔案有你的完整描述(假設(shè)這就是定義)雖然它能代表你,能在你上面反應(yīng)一些k事(如給你記過(guò)的處分)但你本身并不在這。你實(shí)際也許現(xiàn)在正在國(guó)外呢.
  >>>
  >>>如果把視圖比喻一下,就像你從指縫中只看你想看的人或東西。
比如你只想看你前面三個(gè)人的手里是不是有錢包,你從指縫里看到它們的手就是一個(gè)視圖。而對(duì)其它數(shù)據(jù)不關(guān)心。

  >>>現(xiàn)用庫(kù)表來(lái)說(shuō)一下。學(xué)生表有許多描述學(xué)生的信息。成績(jī)表有許多課目的成績(jī)。你只想列出名字,學(xué)號(hào),課目,成績(jī)。那么你至少有兩種三種方法:
   》》》1.再建一個(gè)表存這些數(shù)據(jù)。顯然這會(huì)占空間,而且你在更新那兩個(gè)表時(shí)也要更新這個(gè)表,很容易忘記。
   》》》2.用查詢語(yǔ)句查出結(jié)果。但要每次操作(當(dāng)然可以寫存儲(chǔ)過(guò)程--但不能對(duì)結(jié)果再操作;;;也可以寫臨時(shí)表---但對(duì)它的操作也不方便)
   》》》3.建視圖。把需要的數(shù)據(jù)的定義放到視圖中,以后查詢可以直接用這個(gè)視圖名,如同用表名一樣。

注意:前面講到并不是所有對(duì)視圖的操作都會(huì)完成對(duì)原表的操作。一個(gè)簡(jiǎn)單的例子,,視圖某一列(金額)由(單價(jià)*數(shù)量)獲得,更新視圖的金額這一列,如100改成200,則多出100,但數(shù)據(jù)庫(kù)并不知道如何把這100分給單價(jià)還是數(shù)量。

該文章在 2012/1/14 17:33:35 編輯過(guò)

全部評(píng)論2

admin
2012年1月14日 17:33
索引是為了提升數(shù)據(jù)查詢性能,視圖一般用于給用戶提供一個(gè)統(tǒng)一的接口而屏蔽掉無(wú)用或需要保密的信息。
一般來(lái)說(shuō),如果數(shù)據(jù)量不是太大,比如只有幾萬(wàn)條記錄,不需要建索引,索引本身也是一種數(shù)據(jù),系統(tǒng)為了維護(hù)索引,是需要開(kāi)銷的。如果數(shù)據(jù)量非常大,就一定會(huì)用到索引技術(shù)。比如上百萬(wàn)、幾千萬(wàn)的數(shù)據(jù)量。此時(shí)如果在數(shù)據(jù)表上沒(méi)有索引,數(shù)據(jù)查詢會(huì)非常慢。索引其實(shí)就是預(yù)先給數(shù)據(jù)排序,比如身份證號(hào),如果在這個(gè)字段上有索引,那么從大到小都已經(jīng)有序了,需要查詢某一個(gè)號(hào)碼,系統(tǒng)可以很快檢索到對(duì)應(yīng)的數(shù)據(jù)。
在數(shù)據(jù)庫(kù)中,不是每一個(gè)級(jí)別的用戶都需要全部信息,在某些時(shí)候,有些敏感的信息甚至只能給具有合適權(quán)限的人員,即便用戶進(jìn)入了數(shù)據(jù)庫(kù)(不是指的程序界面檢索,而是直接進(jìn)入了數(shù)據(jù)庫(kù)管理系統(tǒng)),也不可以讓他查看全部信息,此時(shí)就可以用視圖的方法,讓用戶只能查看他應(yīng)該看的信息,真正的基礎(chǔ)表屏蔽起來(lái)。

該評(píng)論在 2012/1/14 17:34:11 編輯過(guò)
admin
2012年1月14日 17:35
索引當(dāng)然是建在表上,索引是為了提高查詢速度提供的一種方式,使用不當(dāng)會(huì)有可能降低速度,索引建好了,當(dāng)查詢條件中where后面使用到的列名上有索引,數(shù)據(jù)庫(kù)會(huì)自動(dòng)使用索引 . 視圖想當(dāng)于一張?zhí)摂M表,因?yàn)橥ǔA?xí)慣將多表連接查詢的結(jié)果作為視圖方便查詢,視圖里的數(shù)據(jù)是只讀的,不能做增改刪查,但可以通過(guò)觸發(fā)器作到相同效果

該評(píng)論在 2012/1/14 17:35:14 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
亚洲精品国产综合久久一线 | 日本AⅤ碰碰碰视频 | 日本免费一级一区二区三区 | 亚洲欧美日韩国产综合一区二区 | 一区二区三区四区国产精品视频 | 亚洲网日本一区 |