⑴ 簡單問題:建立視圖的原則是什麼
在創建視圖前請考慮如下原則:
只能在當前資料庫中創建視圖。但是,如果使用分布式查詢定義視圖,則新視圖所引用的表和視圖可以存在於其它資料庫中,甚至其它伺服器上。
視圖名稱必須遵循標識符的規則,且對每個用戶必須為唯一。此外,該名稱不得與該用戶擁有的任何錶的名稱相同。
可以在其它視圖和引用視圖的過程之上建立視圖。Microsoft® SQL Server™ 2000 允許嵌套多達 32 級視圖。
不能將規則或 DEFAULT 定義與視圖相關聯。
不能將 AFTER 觸發器與視圖相關聯,只有 INSTEAD OF 觸發器可以與之相關聯。
定義視圖的查詢不可以包含 ORDER BY、COMPUTE 或 COMPUTE BY 子句或 INTO 關鍵字。
不能在視圖上定義全文索引定義。
不能創建臨時視圖,也不能在臨時表上創建視圖。
不能除去參與到用 SCHEMABINDING
子句創建的視圖中的表或視圖,除非該視圖已被除去或更改而不再具有架構綁定。另外,如果參與具有架構綁定的視圖的表執行 ALTER TABLE
語句影響視圖定義,則這些語句將失敗。
不能對視圖執行全文查詢,但是如果查詢所引用的表被配置為支持全文索引,就可以在視圖定義中包含全文查詢。
⑵ 什麼是資料庫視圖怎樣去理解它
資料庫是依照某種數據模型組織起來並存放二級存儲器中的數據集合。這種數據集合具有如下特點:盡可能不重復,以最優方式為某個特定組織的多種應用服務,其數據結構獨立於使用它的應用程序,對數據的增、刪、改和檢索由統一軟體進行管理和控制。從發展的歷史看,資料庫是數據管理的高級階段,它是由文件管理系統發展起來的。
資料庫的基本結構分三個層次,反映了觀察資料庫的三種不同角度。
(1)物理數據層。它是資料庫的最內層,是物理存貯設備上實際存儲的數據的集合。這些數據是原始數據,是用戶加工的對象,由內部模式描述的指令操作處理的位串、字元和字組成。
(2)概念數據層。它是資料庫的中間一層,是資料庫的整體邏輯表示。指出了每個數據的邏輯定義及數據間的邏輯聯系,是存貯記錄的集合。它所涉及的是資料庫所有對象的邏輯關系,而不是它們的物理情況,是資料庫管理員概念下的資料庫。
(3)邏輯數據層。它是用戶所看到和使用的資料庫,表示了一個或一些特定用戶使用的數據集合,即邏輯記錄的集合。
資料庫不同層次之間的聯系是通過映射進行轉換的。資料庫具有以下主要特點:
(1)實現數據共享。數據共享包含所有用戶可同時存取資料庫中的數據,也包括用戶可以用各種方式通過介面使用資料庫,並提供數據共享。
(2)減少數據的冗餘度。同文件系統相比,由於資料庫實現了數據共享,從而避免了用戶各自建立應用文件。減少了大量重復數據,減少了數據冗餘,維護了數據的一致性。
(3)數據的獨立性。數據的獨立性包括資料庫中資料庫的邏輯結構和應用程序相互獨立,也包括數據物理結構的變化不影響數據的邏輯結構。
(4)數據實現集中控制。文件管理方式中,數據處於一種分散的狀態,不同的用戶或同一用戶在不同處理中其文件之間毫無關系。利用資料庫可對數據進行集中控制和管理,並通過數據模型表示各種數據的組織以及數據間的聯系。
(5)數據一致性和可維護性,以確保數據的安全性和可靠性。主要包括:①安全性控制:以防止數據丟失、錯誤更新和越權使用;②完整性控制:保證數據的正確性、有效性和相容性;③並發控制:使在同一時間周期內,允許對數據實現多路存取,又能防止用戶之間的不正常交互作用;④故障的發現和恢復:由資料庫管理系統提供一套方法,可及時發現故障和修復故障,從而防止數據被破壞
⑶ 看組合圖的視圖時。應遵循什麼規原則
看組合圖的視圖的時候,一定要遵循三視圖相結合的原則。
因為三視圖首先必須要看俯視圖,立面圖和側面圖,這三個圖必須要綜合性的,觀看才可以知道這個物體的具體形狀與尺寸。
⑷ 試述視圖的作用什麼是"運行記錄優先原則
資料庫視圖的作用只要有:1. 資料庫視圖隱藏了數據的復雜性。2. 資料庫視圖有利於控制用戶對表中某些列的訪問。3. 資料庫視圖使用戶查詢變得簡單。視圖是一個虛擬表,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據。但是,視圖並不在資料庫中以存儲的數據值集形式存在。行和列數據來自由定義視圖的查詢所引用的表,並且在引用視圖時動態生成。對其中所引用的基礎表來說,視圖的作用類似於篩選。定義視圖的篩選可以來自當前或其它資料庫的一個或多個表,或者其它視圖。分布式查詢也可用於定義使用多個異類源數據的視圖。如果有幾台不同的伺服器分別存儲組織中不同地區的數據,而您需要將這些伺服器上相似結構的數據組合起來,這種方式就很有用。通過視圖進行查詢沒有任何限制,通過它們進行數據修改時的限制也很少。
⑸ 資料庫如何創建視圖
視圖是一個虛擬表,其內容由查詢定義。同真實的表一樣,視圖包含一系列帶有名稱的列和行數據。但是,視圖並不在資料庫中以存儲的數據值集形式存在。行和列數據來自由定義視圖的查詢所引用的表,並且在引用視圖時動態生成。
對其中所引用的基礎表來說,視圖的作用類似於篩選。定義視圖的篩選可以來自當前或其它資料庫的一個或多個表,或者其它視圖。通過視圖進行查詢沒有任何限制,通過它們進行數據修改時的限制也很少。
視圖是存儲在資料庫中的查詢的SQL 語句,它主要出於兩種原因:安全原因, 視圖可以隱藏一些數據,如:社會保險基金錶,可以用視圖只顯示姓名,地址,而不顯示社會保險號和工資數等,另一原因是可使復雜的查詢易於理解和使用。這個視圖就像一個「窗口」,從中只能看到你想看的數據列。這意味著你可以在這個視圖上使用SELECT *,而你看到的將是你在視圖定義里給出的那些數據列:
既然視圖的定義是基於基本表的,哪為什麼還要定義視圖呢?這是因為合理地使用視圖能夠帶來許多好處:
1、 視圖能簡化用戶操作
視圖機制使用戶可以將注意力集中在所關心地數據上。如果這些數據不是直接來自基本表,則可以通過定義視圖,使資料庫看起來結構簡單、清晰,並且可以簡化用戶的的數據查詢操作。例如,那些定義了若干張表連接的視圖,就將表與表之間的連接操作對用戶隱藏起來了。換句話說,用戶所作的只是對一個虛表的簡單查詢,而這個虛表是怎樣得來的,用戶無需了解。
2、 視圖使用戶能以多種角度看待同一數據
視圖機制能使不同的用戶以不同的方式看待同一數據,當許多不同種類的用戶共享同一個資料庫時,這種靈活性是非常必要的。
3、 視圖對重構資料庫提供了一定程度的邏輯獨立性
數據的物理獨立性是指用戶的應用程序不依賴於資料庫的物理結構。數據的邏輯獨立性是指當資料庫重構造時,如增加新的關系或對原有的關系增加新的欄位,用戶的應用程序不會受影響。層次資料庫和網狀資料庫一般能較好地支持數據的物理獨立性,而對於邏輯獨立性則不能完全的支持。
在關許資料庫中,資料庫的重構造往往是不可避免的。重構資料庫最常見的是將一個基本表「垂直」地分成多個基本表。例如:將學生關系Student(Sno,Sname,Ssex,Sage,Sdept),
分為SX(Sno,Sname,Sage)和SY(Sno,Ssex,Sdept)兩個關系。這時原表Student為SX表和SY表自然連接的結果。如果建立一個視圖Student:
[sql]view plain
CREATEVIEWStudent(Sno,Sname,Ssex,Sage,Sdept)ASSELECTSX.Sno,SX.Sname,SY.Ssex,SX.Sage,SY.SdeptFROMSX,SYWHERESX.Sno=SY.Sno;
這樣盡管資料庫的邏輯結構改變了(變為SX和SY兩個表了),但應用程序不必修改,因為新建立的視圖定義為用戶原來的關系,使用戶的外模式保持不變,用戶的應用程序通過視圖仍然能夠查找數據。
當然,視圖只能在一定程度上提供數據的邏輯獨立,比如由於視圖的更新是有條件的,因此應用程序中修改數據的語句可能仍會因為基本表構造的改變而改變。
4、視圖能夠對機密數據提供安全保護
有了視圖機制,就可以在設計資料庫應用系統時,對不同的用戶定義不同的視圖,使機密數據不出現在不應該看到這些數據的用戶視圖上。這樣視圖機制就自動提供了對機密數據的安全保護功能。例如,Student表涉及全校15個院系學生數據,可以在其上定義15個視圖,每個視圖只包含一個院系的學生數據,並只允許每個院系的主任查詢和修改本原系學生視圖。
5、適當的利用視圖可以更清晰地表達查詢
例如經常需要執行這樣的查詢「對每個學生找出他獲得最高成績的課程號」。可以先定義一個視圖,求出每個同學獲得的最高成績:
[sql]view plain
CREATEVIEWVMGRADE
AS
SELECTSno,MAX(Grade)Mgrade
FROMSC
GROUPBYSno
然後用如下的查詢語句完成查詢:
[sql]view plain
SELECTSC.Sno,CnoFROMSC,VMGRADEWHERESC.Sno=VMGRADE.SnoANDSC.Grade=VMGRADE.Mgrade;
二、數據准備
1、員工表
[sql]view plain
CREATETABLEt_employee(
IDINTPRIMARYKEYAUTO_INCREMENT,
NAMECHAR(30)NOTNULL,
SEXCHAR(2)NOTNULL,
AGEINTNOTNULL,
DEPARTMENTCHAR(10)NOTNULL,
SALARYINTNOTNULL,
HOMECHAR(30),
MARRYCHAR(2)NOTNULLDEFAULT'否',
HOBBYCHAR(30)
);
插入數據:
[sql]view plain
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'小紅','女',20,'人事部','4000','廣東','否','網球');
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'明日','女',21,'人事部','9000','北京','否','網球');
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'天天','男',22,'研發部','8000','上海','否','音樂');
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'大大','女',23,'研發部','9000','重慶','否','無');
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'王下','女',24,'研發部','9000','四川','是','足球');
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'無名','男',25,'銷售部','6000','福建','否','游戲');
INSERTINTOlearning.t_employee(ID,NAME,SEX,AGE,DEPARTMENT,SALARY,HOME,MARRY,HOBBY)VALUES(NULL,'不知道','女',26,'銷售部','5000','山西','否','籃球');
插入的結果:
結果顯示插入失敗
對於with check option用法,總結如下:
通過有with check option選項的視圖操作基表(只是面對單表,對連接多表的視圖正在尋找答案),有以下結論: 插入後的數據,通過視圖能夠查詢出來就符合WITH CHECK OPTION 否則就不符合;
首先視圖只操作它可以查詢出來的數據,對於它查詢不出的數據,即使基表有,也不可以通過視圖來操作。
1.對於update,有with check option,要保證update後,數據要被視圖查詢出來
2.對於delete,有無with check option都一樣
4.對於insert,有with check option,要保證insert後,數據要被視圖查詢出來
對於沒有where 子句的視圖,使用with check option是多餘的
7、刪除視圖
[sql]view plain
DROPVIEWIFEXISTS視圖名
等
⑹ Oracle資料庫概述及特點
Oracle資料庫概述及特點
Oracle Database,又名Oracle RDBMS,或簡稱Oracle。是甲骨文公司的一款關系資料庫管理系統。到目前仍在資料庫市場上佔有主要份額。勞倫斯·埃里森和他的朋友,之前的同事Bob Miner和Ed Oates在1977年建立了軟體開發實驗室咨詢公司(SDL,Software Development Laboratories)。
ORACLE資料庫概論
ORACLE資料庫系統是美國ORACLE公司(甲骨文)提供的以分布式資料庫為核心的一組軟體產品,是目前最流行的客戶/伺服器(CLIENT/SERVER)或B/S體系結構的資料庫之一。比如SilverStream就是基於資料庫的`一種中間件。
ORACLE資料庫是目前世界上使用最為廣泛的資料庫管理系統,作為一個通用的資料庫系統,它具有完整的數據管理功能;作為一個關系資料庫,它是一個完備關系的產品;作為分布式資料庫它實現了分布式處理功能。但它的所有知識,只要在一種機型上學習了ORACLE知識,便能在各種類型的機器上使用它。
Oracle資料庫最新版本為Oracle Database 12c。Oracle資料庫12c 引入了一個新的多承租方架構,使用該架構可輕松部署和管理資料庫雲。此外,一些創新特性可最大限度地提高資源使用率和靈活性,如Oracle Multitenant可快速整合多個資料庫,而Automatic Data Optimization和Heat Map能以更高的密度壓縮數據和對數據分層。這些獨一無二的技術進步再加上在可用性、安全性和大數據支持方面的主要增強,使得Oracle資料庫12c 成為私有雲和公有雲部署的理想平台。
ORACLE資料庫特點
1、完整的數據管理功能:
1)數據的大量性
2)數據的保存的持久性
3)數據的共享性
4)數據的可靠性
2、完備關系的產品:
1)信息准則---關系型DBMS的所有信息都應在邏輯上用一種方法,即表中的值顯式地表示;
2)保證訪問的准則
3)視圖更新准則---只要形成視圖的表中的數據變化了,相應的視圖中的數據同時變化
4)數據物理性和邏輯性獨立准則
3、分布式處理功能:
ORACLE資料庫自第5版起就提供了分布式處理能力,到第7版就有比較完善的分布式資料庫功能了,一個ORACLE分布式資料庫由oraclerdbms、sql*Net、SQL*CONNECT和其他非ORACLE的關系型產品構成。
4、用ORACLE能輕松的實現數據倉庫的操作。
這是一個技術發展的趨勢,不在這里討論。
優點
■ 可用性強
■ 可擴展性強
■ 數據安全性強
■ 穩定性強
;⑺ 主視圖的選擇原則是什麼啊
從物體的前面向後面投射所得的視圖稱主視圖——能反映物體的前面形狀
比如:圓錐的主視圖是三角形,圓柱的主視圖是長方形。
主視圖的投影規則是:主視、俯視
長對正
主視圖的選擇
1.加工位置原則
主視圖應盡量表示零件在加工時所處位置
2.工作位置原則
主視圖應盡量表示零件在機器上的工作位置或安裝位置
3.主視圖的投影方向
主視圖應能充分反映零件的結構形狀
(1)在選擇主視圖的同時,選擇相應的其它視圖及適當的表達方法以補充主視圖表達的不足
(2)
對於主視圖中尚未表達清楚的主要結構形狀應優先選用俯視圖,左視圖等基本視圖,並在基本視圖上剖視,次要的局部結構可採用局部視圖,局部剖視,剖面,局部放大圖及簡化畫法等表達方法,並盡可能按投影關系配置視圖,以利於畫圖和讀圖
(3)選擇零件圖的視圖表達方案時,應以遵循形狀特徵原則為主,同時考慮盡可能符合工作位置原則和加工位置原則
(4)選擇主視圖時,應同時考慮其它視圖的選擇,
各視圖應相互配合,互為補充,使表達既完整又全面
⑻ 資料庫如何創建視圖
一般來說,視圖創建可以分為五步走:
第一步:先考慮select語句的編寫。我們知道,視圖其實就是一個select語句的集合,所以,我們建立視圖的第一步,就是考慮這個select語句 的如何編寫。這個select語句編寫的是否合理,執行效率的高低直接影響著這個視圖的性能,在Select語句中,可能還會有格式的控制、內容的編排等 等。如在Select語句中,可以把一些欄位合並成一個欄位;也可以把相關的內容進行倒置等等。這些功能都是Select語句完成的。所以可以這么 說,Select語句的編寫是視圖建立的基礎。
第二步:對這個Select語句進行測試。當我們編寫好Select語句之後,就需要在資料庫中執行這條語句,看其能否查詢到我們想要的值。在對 Select語句進行測試的時候,需要注意一個問題,有時候Select查詢語句可以查到准確的數據,但是在以這條語句建立視圖的時候,可能就會通不過。 如在一些表之間的連接查詢的時候,如果兩個表中有個欄位名相同,是可以的。因為他們除了欄位名字之外,還有表名一起來定義這個欄位。如A.name與 B.name。這是不算重名的。但是,若在建立視圖的時候,這就會被認為是重復的列明,需要對其中的一個列名進行重定義。這一點在資料庫視圖建立的時候, 要特別的注意。
第三步:考慮查詢結果的准確性。通過查詢語句把我們想要的結果查詢出來後,我們就需要看看這個結果是否滿足我們的需要。在這個過程中,我們主要注意兩 點。一是形式欄位是否齊全。在一些應用系統中,若資料庫的視圖要能夠被前台的應用程序調用的話,則必須包含一些形式欄位。如筆者以前在設計一個 ERP系統的時候,若前台系統要調用資料庫中的視圖的時候,必須包含記錄更新時間、更新者、記錄創建時間、創建者等相關信息。若缺乏這些信息的話,則前台 調用這張視圖的時候,就會出現錯誤。故在考慮查詢結果准確性的問題的時候,就要考慮到前台應用程序的需要,看看這些形式欄位是否齊全。二是實體內容的完整 性。我們到底需要顯示表中的哪些欄位呢,這個我們在這里要確認清楚。若顯示內容太多的話,則會影響視圖的執行效率,而且也會降低視圖的安全性作用;但是, 若欄位內容顯示不足的話,則以後要添加欄位的話,會比較麻煩,有一定的工作量。所以在這個檢驗的時候,需要根據視圖的實際功用,確定視圖需要顯示的內容。
第四步:視圖的修飾。有時候,為了閱讀的方便,我們需要對查詢結果進行一些修飾。如現在有兩張表,一張是員工基本信息表,這表中有員工姓名、員工職位編號 等等;另一張表是職位基本信息表,在這表中有職位編號、職位名稱。我們希望在視圖中能夠如下顯示:「職位:員工名字」,如資料庫工程師:Victor。也 就是說,把兩個欄位合並起來,並且在中間加入一個冒號。這些格式性的內容都是在查詢的時候實現的。所以,我們確認查詢的結果沒有錯誤之後,接下來就要確認 格式問題。若能夠在視圖中規范這些格式問題,則前台的程序設計就會相對來說比較簡單
第五步:建立視圖。等到上面四步都確認無誤後,我們就要根據上面的查詢語句來建立視圖了。不過在這一步過程中,也有一些問題需要注意。一是視圖名字的命 名規格。我們除了遵循資料庫的強制命名格式之外,如不能以數字開頭等等,還需要遵循一些軟規則。如視圖最好能夠以V開頭,跟基礎表進行隔開;另外在視圖命 名中,能夠根據應用模塊的不同,來進行分類,並體現在視圖的名字中。這對於我們後續視圖的查找都具有非常現實的意義。二是雖然可以在視圖中直接更新基礎 表,不過,為了安全與數據統一的考慮,我們這些過來人一般都不建議通過視圖來直接更新基礎表中的數據。雖然資料庫提供了類似的功能。若要更改相關數據的 話,則直接去更改基礎表的內容為好。在建立視圖的時候,默認情況下是不能夠通過視圖直接更新基礎表。
⑼ 使用WPS表格的資料庫管理功能在創建工作表時,必須遵循的准則
題主是否想詢問「使用WPS表格的資料庫管理功能在創建工作表時,必須遵循的准則是什麼」?必須遵循的准則是原始單據與實體之間的關系。
1、用戶在使用WPS表格的資料庫管理功能在創建工作表時,可以是一對一、一對多、多對多的關系。
2、在一般情況下,資料庫管理功能中的一對一的關系:即一張原始單據對應且只對應一個實體。在特殊情況下,可能是一對多或多對一的關系,即一張原始單證對應多個實體,或多張原始單證對應一個實體。這里的實體可以理解為基本表。明確這種對應關系後,對設計資料庫管理功能的錄入界面大有好處。
3、一份員工的履歷資料,在使用WPS表格的資料庫管理功能在創建工作表時,就對應三個基本表:員工基本情況表、社會關系表、工作簡歷表,使用起來也是比較方便的,這就是用戶使用WPS表格的資料庫管理功能在創建工作表時必須遵循的准則的典型例子。