資源描述:
《數(shù)據(jù)庫及SQL語言介紹ppt課件.ppt》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。
1、數(shù)據(jù)庫及SQL語言介紹數(shù)據(jù)庫基本概念數(shù)據(jù)庫:儲存在計算機(jī)內(nèi)、有組織、可共享的相關(guān)數(shù)據(jù)集合;簡言之:數(shù)據(jù)(信息)的集合DBMS-DataBaseManagementSystem處理數(shù)據(jù)庫訪問的軟件。提供面向用戶的接口功能、面向系統(tǒng)的維護(hù)功能。提供一個方便、有效存取數(shù)據(jù)庫信息的環(huán)境數(shù)據(jù)庫系統(tǒng):用于組織和存取大量數(shù)據(jù)(信息)的管理系統(tǒng);方便多用戶使用計算機(jī)軟、硬件資源的系統(tǒng);數(shù)據(jù)庫系統(tǒng)構(gòu)成數(shù)據(jù)庫最終用戶應(yīng)用系統(tǒng)應(yīng)用開發(fā)工具DBMS操作系統(tǒng)數(shù)據(jù)庫管理員DBA應(yīng)用程序員數(shù)據(jù)庫系統(tǒng)的特點相對于文件系統(tǒng),數(shù)據(jù)庫系統(tǒng)有如下特點:數(shù)據(jù)、程序的獨立性數(shù)據(jù)的充分共享
2、有效地訪問數(shù)據(jù)減少應(yīng)用程序的開發(fā)時間數(shù)據(jù)的一致性和安全性統(tǒng)一的數(shù)據(jù)管理并發(fā)的數(shù)據(jù)訪問數(shù)據(jù)模型數(shù)據(jù)模型數(shù)據(jù)庫系統(tǒng)的核心對客觀事物及其聯(lián)系的數(shù)據(jù)的描述實體模型的數(shù)據(jù)化,表示實體之間的聯(lián)系的模型當(dāng)前流行的數(shù)據(jù)模型:關(guān)系層次網(wǎng)狀關(guān)系數(shù)據(jù)模型將數(shù)據(jù)抽象成一個或多個表,一組有關(guān)聯(lián)的表組成一個數(shù)據(jù)庫,這些表相互獨立,沒有任何層次、物理關(guān)系表中每一行為一條記錄,描述一條數(shù)據(jù)或信息,對應(yīng)一個實體的具體值表中每一列為一個屬性,有固定的數(shù)據(jù)類型,對應(yīng)一個實體的某個特征SQL語言的發(fā)展1974年,由Boyce和Chamberlin提出1975~1979,IBMSanJ
3、oseResearchLab的關(guān)系數(shù)據(jù)庫管理系統(tǒng)原型SystemR實施了這種語言SQL-86是第一個SQL標(biāo)準(zhǔn)SQL-89、SQL-92(SQL2)、SQL-99(SQL3)商用產(chǎn)品支持情況大部分DBMS產(chǎn)品都支持SQL,成為操作數(shù)據(jù)庫的標(biāo)準(zhǔn)語言有方言,支持程度不同交互式SQL一般DBMS都提供聯(lián)機(jī)交互工具用戶可直接鍵入SQL命令對數(shù)據(jù)庫進(jìn)行操作由DBMS來進(jìn)行解釋嵌入式SQL能將SQL語句嵌入到高級語言(宿主語言,如C)使應(yīng)用程序充分利用SQL訪問數(shù)據(jù)庫的能力、宿主語言的過程處理能力一般需要預(yù)編譯,將嵌入的SQL語句轉(zhuǎn)化為宿主語言編譯器能處理
4、的語句SQL語言的形式SQL語言的功能(分類)從功能上分為4種類型,一共用了9個動詞數(shù)據(jù)查詢語言QL數(shù)據(jù)定義語言DDL數(shù)據(jù)操縱語言DML數(shù)據(jù)控制語言DCL數(shù)據(jù)定義語言DDL數(shù)據(jù)定義語言用來創(chuàng)建、修改、刪除數(shù)據(jù)庫中的各種實體,如:數(shù)據(jù)庫(Database),表(Table)、視圖(View)、索引(Index)、同義詞(Synonym)、存儲過程(procedure)等CREATE語句:建立各種實體ALTER語句:修改已經(jīng)建立的各種實體DROP語句:刪除已經(jīng)建立的各種實體DDL-創(chuàng)建新表語法CREATETABLEtable-name(column
5、_namedatatype[NULL
6、NOTNULL][,column_namedatatype[NULL
7、NOTNULL]]…)示例createtablePerson(idchar(20)notnull,namechar(32)notnull,ageintegerbirthchar(16)notnull,sexchar(4)provincechar(10));DDL-創(chuàng)建索引語法CREATE[UNIQUE]INDEXindex-nameONtable-name(column_name[,column_name])示例createindexNA
8、ME_PERSON_INDEXonPERSON(name);createuniqueindexID_PERSON_INDEXonPERSON(id);DDL-刪除表、索引語法DROPTABLEtable-nameDROPINDEXindex-name示例DROPTABLEPERSONDROPINDEXID_PERSON_INDEX數(shù)據(jù)操縱語言DML數(shù)據(jù)操縱語言用來添加、修改、刪除數(shù)據(jù)庫中的數(shù)據(jù)記錄(行)INSERT語句:添加新的數(shù)據(jù)(記錄)到數(shù)據(jù)庫UPDATE語句:修改數(shù)據(jù)庫中現(xiàn)有的行DELETE語句:刪除數(shù)據(jù)庫中現(xiàn)有的行DML–添加記錄語法I
9、NSERTINTOtable-name[(column1,[column2]…]VALUES(constans1[,constants]…)示例insertinfoPERSON(id,name,sex,birth,age,province)VALUES(‘1234567890’,’張三‘,‘男’,’20080101’,1,‘beijing”)insertinfoPERSONVALUES(‘1234567890’,’張三‘,1,’20080101’,1,’男’‘beijing”)DDL-刪除記錄語法DELETEFROMtable-nameWHER
10、Esearch_contitions示例DELETEFROMPERSONWhereid=‘12345’DDL-更新記錄語法UPDATEtable-na