當前位置:首頁 » 編程語言 » sql是層次模型嗎
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql是層次模型嗎

發布時間: 2022-09-14 10:09:43

1. sql Server是一個基於() A.層次模型的DBMS B.網狀模型的DBMS C.關系模式的

這個題選D。。。。SQL server是關系型資料庫管理系統。

2. SQL語言是層次資料庫語言嗎

SQL是結構查詢語言,也是一種嵌入式的語言,嚴格說來他與具體的宿主是沒有關系的!與宿主類型關系也不是很大。SQL嵌入到sql server中,而sql server是一個關系型資料庫,我們不能由此猜測sql就是關系型資料庫語言。一般在sql server嵌入的我們稱之為T-SQL。sql嵌入到ACCESS中,這種方式使用的標准較低,一般為ANSI-SQL。ACCESS是桌面型關系資料庫。SQL同樣嵌入到了Oracle中,而Oracle數據是一種新興對象資料庫。一般為PL/SQL。所以SQL是結構查詢語言不假,同時採用不同的ISO標准而嵌入到了不同的資料庫中,跟具體的宿主關系不大!

3. 資料庫系統中,最早出現的資料庫模型是

最早出現的是網狀
dbms,是美國通用電氣公司bachman等人在1961年開發成功的ids(integrated
data
store)。1961年通用電氣公司的charles
bachman
成功地開發出世界上第一個網狀dbms也是第一個資料庫管理系統--集成數據存儲(integrated
data
store
ids),奠定了網狀資料庫的基礎,並在當時得到了廣泛的發行和應用。層次型dbms是緊隨網狀型資料庫而出現的。最著名最典型的層次資料庫系統是ibm
公司在1968
年開發的ims(information
management
system),一種適合其主機的層次資料庫。這是ibm公司研製的最早的大型資料庫系統程序產品。1976年霍尼韋爾公司(honeywell)開發了第一個商用關系資料庫系統—multics
relational
data
store。關系型資料庫系統以關系代數為堅實的理論基礎,經過幾十年的發展和實際應用,技術越來越成熟和完善。其代表產品有oracle、ibm公司的db2、微軟公司的ms
sql
server以及informix等等。

4. 什麼是sql主動元素sql主動元素有哪些

SQL:Structured Query Language(結構化查詢語言);

主動元素有

(1)數據結構:定義數據的結構;

(2)數據操作:CRUD;

(3)數據約束:比如鍵約束、完整性約束等


數據模型:對於數據的描述方式;比如關系數據模型是用二維表來描述,層次數據模型用樹來描述數據。

數據模型由三部分組成:

(1)數據結構:定義數據的結構;

(2)數據操作:CRUD;

(3)數據約束:比如鍵約束、完整性約束等;

數據模型介紹

1.關系數據模型

將數據描述成二維表的形式,例如:

關系模型的特點:

(1)建模方便,操作簡單(SQL);

(2)高效性(訪問快速)、易用性;

(3)描述數據單一,即用表來表述數據;

2.半結構化數據模型


將數據描述成類似於XML的形式,例如:



3.對象關系模型


關系的屬性不僅僅是基本數據類型,並且每個關系都有相關的方法;


4.層次模型


基於樹結構的模型,在物理層次進行操作,很不方便;

5.網狀模型


基於圖結構的模型,也是在物理層次進行操作,很不方便;

關系模型術語


關系模型約定:屬性具有原子性,即每個屬性都是基本的數據類型;

關系:二維表;

屬性:每列為一個屬性;

元組:每一行為一個元組,即記錄;

分量(component):元組的每個屬性值就是一個分量;

表模式:由表名、表的屬性、屬性的數據類型組成;

資料庫模式:多個表的模式;

域:屬性的數據類型;

實例:表就是關系的實例,當然,如果隨著時間的改變,表發生改變,但是他仍然是關系的實例;

當前實例 :當前表的數據集;

超鍵:能夠確定一個元組的屬性集;

候選鍵:最小的超鍵;

主鍵:設計者選定的候選鍵;

主屬性:包含於候選碼的一個屬性;比如如果候選碼為AB,則主屬性可以是A,B,只要包含於候選碼的單個屬性即可;

一般我們都是通過新建一個虛擬鍵作為主鍵,比如學校里有學號,社會上有身份證號,書有書號等;


就上圖來說,

關系:account;

屬性:account_number、balance;

元組:(A-101,500),....;

第一個元組的第一個分量:A-101;

表模式:account(account_number,balance);

資料庫模式未知;

account_number的域:string,balance的域為int;

實例為現在account的這張表;

超鍵可以為(account_number,balance)、(account_number);

候選鍵為(account_number);

主鍵根據設計者自行選定;問:比較以下兩個關系,是否為同一個關系?答:是的,這兩個關系只是把屬性的順序以及元組的順序改變了,但是他們還是同一個關系,只是表現形式不同;SQL初步SQL是專門用於關系模式的查詢語言,他是高度抽象化的;SQL的版本有最早的 ANSI SQL-->SQL92-->SQL99-->SQL2003現在的各大商業資料庫都是有各自版本的SQL,比如SQL Server對應T-SQL,而Oracle對應PL/SQL;SQL中存在DDL和DML;SQL默認是基於包的資料庫,即允許一個表中存在重復的元組;SQL不區分大小寫,包括關鍵字,表名,屬性名等都是,但是字元串是大小寫敏感的;比如:FROM 和 from是一樣的,表明Table和tablE是一樣的,屬性名Attr和attR是一樣的;SQL中的比較運算符:需要注意的是兩個運算符,=和<>分別表示相等和不等,不能使用!=來表示不等;字元串連接運算符:+,即'xiaz'+'dong';字元串是用單引號括起來的;

5. 資料庫管理系統常見的數據模型有層次模型,網狀模型和什麼

資料庫管理系統常見的數據模型有層次模型,網狀模型和語義模型。

在關系模型基礎上增加全新的數據構造器和數據處理原語,用來表達復雜的結構和豐富的語義的一類新的數據模型。

資料庫管理系統是一個能夠提供數據錄入、修改、查詢的數據操作軟體,具有數據定義、數據操作、數據存儲與管理、數據維護、通信等功能,且能夠允許多用戶使用。另外,資料庫管理系統的發展與計算機技術發展密切相關。

為此,若要進一步完善計算機資料庫管理系統,技術人員就應當不斷創新、改革計算機技術,並不斷拓寬計算機資料庫管理系統的應用范圍,從而真正促進計算機資料庫管理系統技術的革新。



(5)sql是層次模型嗎擴展閱讀:

資料庫管理應盡可能地消除了冗餘,但是並沒有完全消除,而是控制大量資料庫固有的冗餘。例如,為了表現數據間的關系,數據項的重復一般是必要的,有時為了提高性能也會重復一些數據項。

通過消除或控制冗餘,可降低不一致性產生的危險。如果數據項在資料庫中只存儲了一次,則任何對該值的更新均只需進行一次,而且新的值立即就被所有用戶獲得。

如果數據項不只存儲了一次,而且系統意識到這點,系統將可以確保該項的所有拷貝都保持一致。不幸的是,許多DBMS都不能自動確保這種類型的一致性。

資料庫應該被有許可權的用戶共享。DBMS的引入使更多的用戶可以更方便的共享更多的數據。新的應用程序可以依賴於資料庫中已經存在的數據,並且只增加沒有存儲的數據,而不用重新定義所有的數據需求。

6. sql資料庫的關系模型有哪些原始運算

關系模型有如下優點
1. 數據結構簡單
在關系模型中,數據模型是一些表格的框架,實體通過關系的屬性(即表格的欄目)表示,實體之間的聯系通過這些表格中的公共屬性(可以不同屬性名,但必須同域)表示。結構非常簡單,即使非專業人員也能一看就明白。
2. 查詢與處理方便
在關系模型中,數據的操作較非關系模型方便,它的一次操作不只是一個元組,而可以是一個元組集合。特別在高級語言的條件語句配合下,一次可操作所有滿足條件的記錄。
3. 數據獨立性很高
在關系模型中,用戶對數據的操作可以不涉及數據的物理存儲位置,而只須給出數據所在的表、屬性等有關數據自身的特性即可,具有較高的數據獨立性。
4. 堅實的理論基礎
與網狀模型和層次模型不同,關系模型一開始便注重理論研究。在資料庫領域專家的不懈努力下,關系系統的研究日趨完善,而且也促進了其它軟體分支如軟體工程的發展。

關系模型也存在的不足的地方:
1. 查詢效率低
關系模型的資料庫管理系統提供了較高的數據獨立性和非過程化的查詢功能,因此系統的負擔很重,直接影響查詢速度和查詢效率。
2. 關系DBMS實現較困難
由於關系資料庫管理系統的效率比較低,必須對關系模型的查詢進行優化,這一工作相當復雜,實現難度比較大。

7. SQL Server 2000屬於什麼資料庫系統 A.層次模型 B.網狀模型 C.關系模型 D.面向對象模型

C,關系模型資料庫,什麼是關系?就是表與表的關系(外建主鍵),
從ER圖到關系模型,資料庫就設計好了

8. 求SQL答案!!!

第一題:sql server 是關系模型資料庫系統
第二題:資料庫中原有的資料庫其中有northwind和pubs也是用戶資料庫
第三題:附加資料庫的操作是把已經存在於磁碟的資料庫文件恢復成資料庫
第四題:主鍵是用來實施實體完整性約束,另外還有參照完整性和用戶自定義完整性
第五題:使用數據導入導出操作,就可以用簡化為access了
第六題:20/0.4=50
第七題:.ldf是日誌文件的後綴名,mdf是主文件,ndf是次文件
第八題:mm的位置是3,加2,等於5
第九題:len返回字元串長度,返回int
第十題:經過驗證時包括
11:master資料庫
12:觸發器
13:菱形
14:日誌文件
15:insert
16:@
17:windows
18:avg()
19:F5
20::like
1c 2a 3a 4a 5c 6c 7b 8b 9c 10a

9. 資料庫按數據的組織方式來分可以分為哪三種模型

1、層次模型:

①有且只有一個結點沒有雙親結點(這個結點叫根結點)。

②除根結點外的其他結點有且只有一個雙親結點。

層次模型中的記錄只能組織成樹的集合而不能是任意圖的集合。在層次模型中,記錄的組織不再是一張雜亂無章的圖,而是一棵"倒長"的樹。

2、網狀模型 :

①允許一個以上的結點沒有雙親結點。

②一個結點可以有多個雙親結點。

網狀模型中的數據用記錄的集合來表示,數據間的聯系用鏈接(可看作指針)來表示。資料庫中的記錄可被組織成任意圖的集合。

3、關系模型:

關系模型用表的集合來表示數據和數據間的聯系。

每個表有多個列,每列有唯一的列名。

在關系模型中,無論是從客觀事物中抽象出的實體,還是實體之間的聯系,都用單一的結構類型

(9)sql是層次模型嗎擴展閱讀

1、無條件查詢

例:找出所有學生的的選課情況

SELECT st_no,su_no

FROM score

例:找出所有學生的情況

SELECT*

FROM student

「*」為通配符,表示查找FROM中所指出關系的所有屬性的值。

2、條件查詢

條件查詢即帶有WHERE子句的查詢,所要查詢的對象必須滿足WHERE子句給出的條件。

例:找出任何一門課成績在70以上的學生情況、課號及分數

SELECT UNIQUE student.st_class,student.st_no,student.st_name,student.st_sex,student.st_age,score.su_no,score.score

FROM student,score

WHERE score.score>=70 AND score.stno=student,st_no

這里使用UNIQUE是不從查詢結果集中去掉重復行,如果使用DISTINCT則會去掉重復行。另外邏輯運算符的優先順序為NOT→AND→OR。

例:找出課程號為c02的,考試成績不及格的學生

SELECT st_no

FROM score

WHERE su_no=『c02』AND score<60

3、排序查詢

排序查詢是指將查詢結果按指定屬性的升序(ASC)或降序(DESC)排列,由ORDER BY子句指明。

例:查找不及格的課程,並將結果按課程號從大到小排列

SELECT UNIQUE su_no

FROM score

WHERE score<60

ORDER BY su_no DESC

4、嵌套查詢

嵌套查詢是指WHERE子句中又包含SELECT子句,它用於較復雜的跨多個基本表查詢的情況。

例:查找課程編號為c03且課程成績在80分以上的學生的學號、姓名

SELECT st_no,st_name

FROM student

WHERE stno IN (SELECT st_no

FROM score

WHERE su_no=『c03』 AND score>80 )

這里需要明確的是:當查詢涉及多個基本表時用嵌套查詢逐次求解層次分明,具有結構程序設計特點。在嵌套查詢中,IN是常用到的謂詞。若用戶能確切知道內層查詢返回的是單值,那麼也可用算術比較運算符表示用戶的要求。

5、計算查詢

計算查詢是指通過系統提供的特定函數(聚合函數)在語句中的直接使用而獲得某些只有經過計算才能得到的結果。常用的函數有:

COUNT(*) 計算元組的個數

COUNT(列名) 對某一列中的值計算個數

SUM(列名) 求某一列值的總和(此列值是數值型)

AVG(列名) 求某一列值的平均值(此列值是數值型)

MAX(列名) 求某一列值中的最大值

MIN(列名) 求某一列值中的最小值

例:求男學生的總人數和平均年齡

SELECT COUNT(*),AVG(st_age)

FROM student

WHERE st_sex=『男』

例:統計選修了課程的學生的人數

SELECT COUNT(DISTINCT st_no)

FROM score

注意:這里一定要加入DISTINCT,因為有的學生可能選修了多門課程,但統計時只能按1人統計,所以要使用DISTINCT進行過濾。

10. sql資料庫中常用的數據類型有什麼

一、整數數據類型:整數數據類型是最常用的數據類型之一。

1、INT(INTEGER)

INT (或INTEGER)數據類型存儲從-2的31次方 (-2 ,147 ,483 ,648) 到2的31次方-1 (2 ,147 ,483,647) 之間的所有正負整數。每個INT 類型的數據按4 個位元組存儲,其中1 位表示整數值的正負號,其它31 位表示整數值的長度和大小。

2、SMALLINT

SMALLINT 數據類型存儲從-2的15次方( -32, 768) 到2的15次方-1( 32 ,767 )之間的所有正負整數。每個SMALLINT 類型的數據佔用2 個位元組的存儲空間,其中1 位表示整數值的正負號,其它15 位表示整數值的長度和大小。

二、浮點數據類型:浮點數據類型用於存儲十進制小數。浮點數值的數據在SQL Server 中採用上舍入(Round up 或稱為只入不舍)方式進行存儲。

1、REAL數據類型

REAL數據類型可精確到第7 位小數,其范圍為從-3.40E -38 到3.40E +38。 每個REAL類型的數據佔用4 個位元組的存儲空間。

2、FLOAT

FLOAT數據類型可精確到第15 位小數,其范圍為從-1.79E -308 到1.79E +308。 每個FLOAT 類型的數據佔用8 個位元組的存儲空間。 FLOAT數據類型可寫為FLOAT[ n ]的形式。n 指定FLOAT 數據的精度。n 為1到15 之間的整數值。

當n 取1 到7 時,實際上是定義了一個REAL 類型的數據,系統用4 個位元組存儲它;當n 取8 到15 時,系統認為其是FLOAT 類型,用8 個位元組存儲它。

三、二進制數據類型

1、BINARY

BINARY 數據類型用於存儲二進制數據。其定義形式為BINARY( n), n 表示數據的長度,取值為1 到8000 。在使用時必須指定BINARY 類型數據的大小,至少應為1 個位元組。BINARY 類型數據佔用n+4 個位元組的存儲空間。

在輸入數據時必須在數據前加上字元「0X」 作為二進制標識,如:要輸入「abc 」則應輸入「0xabc 」。若輸入的數據過長將會截掉其超出部分。若輸入的數據位數為奇數,則會在起始符號「0X 」後添加一個0,如上述的「0xabc 」會被系統自動變為「0x0abc」。

2、VARBINARY

VARBINARY數據類型的定義形式為VARBINARY(n)。 它與BINARY 類型相似,n 的取值也為1 到8000, 若輸入的數據過長,將會截掉其超出部分。

不同的是VARBINARY數據類型具有變動長度的特性,因為VARBINARY數據類型的存儲長度為實際數值長度+4個位元組。當BINARY數據類型允許NULL 值時,將被視為VARBINARY數據類型。

四、邏輯數據類型

1、BIT:BIT數據類型佔用1 個位元組的存儲空間,其值為0 或1 。如果輸入0 或1 以外的值,將被視為1。 BIT 類型不能定義為NULL 值(所謂NULL 值是指空值或無意義的值)。

五、字元數據類型:字元數據類型是使用最多的數據類型。它可以用來存儲各種字母、數字元號、特殊符號。一般情況下,使用字元類型數據時須在其前後加上單引號』或雙引號」 。

1、CHAR

CHAR 數據類型的定義形式為CHAR[ (n) ]。 以CHAR 類型存儲的每個字元和符號佔一個位元組的存儲空間。n 表示所有字元所佔的存儲空間,n 的取值為1 到8000, 即可容納8000 個ANSI 字元。

若不指定n 值,則系統默認值為1。 若輸入數據的字元數小於n,則系統自動在其後添加空格來填滿設定好的空間。若輸入的數據過長,將會截掉其超出部分。

(10)sql是層次模型嗎擴展閱讀:

SQL包括了所有對資料庫的操作,主要是由4個部分組成:

1、數據定義:這一部分又稱為「SQL DDL」,定義資料庫的邏輯結構,包括定義資料庫、基本表、視圖和索引4部分。

2、數據操縱:這一部分又稱為「SQL DML」,其中包括數據查詢和數據更新兩大類操作,其中數據更新又包括插入、刪除和更新三種操作。

3、數據控制:對用戶訪問數據的控制有基本表和視圖的授權、完整性規則的描述,事務控制語句等。

4、嵌入式SQL語言的使用規定:規定SQL語句在宿主語言的程序中使用的規則。