資源描述:
《VF數(shù)據(jù)庫(kù)第10章 SQL語(yǔ)言課件.ppt》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫(kù)。
1、第10章SQL語(yǔ)言SQL(StructuredQueryLanguage結(jié)構(gòu)化查詢語(yǔ)言),是操作關(guān)系型數(shù)據(jù)庫(kù)的標(biāo)準(zhǔn)數(shù)據(jù)查詢語(yǔ)言,是用于關(guān)系型數(shù)據(jù)庫(kù)定義、數(shù)據(jù)操作和數(shù)據(jù)檢索的標(biāo)準(zhǔn)語(yǔ)言。其中,查詢是SQL語(yǔ)言的重要組成部分。10.1.1SQL語(yǔ)言特點(diǎn)(p187)1、高度的綜合:SQL語(yǔ)言集數(shù)據(jù)操縱、數(shù)據(jù)定義和數(shù)據(jù)控制于一體。2、非過程化3、采用面向集合的操作方式:只要使用一條操作命令4、一種語(yǔ)法結(jié)構(gòu)兩種使用形式:(自含式和嵌入式)5、語(yǔ)言結(jié)構(gòu)簡(jiǎn)捷:(只有9個(gè)命令動(dòng)詞,因此易學(xué)易用)(p187)6、支持三級(jí)模式結(jié)構(gòu):基本表、視圖、導(dǎo)出表10.1.2SQL語(yǔ)言的功能SQL提供了9種語(yǔ)句,
2、分別完成數(shù)據(jù)庫(kù)定義、數(shù)據(jù)操作和數(shù)據(jù)檢索等功能,如表所示。SQL功能語(yǔ)句動(dòng)詞數(shù)據(jù)定義定義基本表或索引CREATE刪除基本表或索引DROP修改基本表ALTER數(shù)據(jù)操作插入記錄INSERT修改記錄UPDATE刪除記錄DELETE數(shù)據(jù)控制授權(quán)GRANT收回權(quán)限REVOKE數(shù)據(jù)查詢SELECT10.2數(shù)據(jù)定義SQL語(yǔ)言的數(shù)據(jù)定義功能包括定義表、定義視圖和定義索引。“定義”包含創(chuàng)建、修改和刪除3部分操作。10.2.1SQL語(yǔ)言基本數(shù)據(jù)類型1、數(shù)值型2、字符型3、日期、時(shí)間型4、邏輯型5、貨幣型6、OLE型10.2.2創(chuàng)建表格式:CREATETABLE<表名>[FREE];(字段名1類型(寬度,
3、小數(shù)位數(shù))[字段的完整性約束],字段名2類型(寬度,小數(shù)位數(shù))[字段的完整性約束],…)功能:創(chuàng)建表,新表在可用的工作區(qū)以獨(dú)占的方式打開。說(shuō)明:1.字段類型用字母表示,常用的如:C(字符型)、D(日期型)、T(日期時(shí)間型)、N(數(shù)值型)、F(浮點(diǎn)型)、I(整數(shù)型)、B(雙精度型)、L(邏輯型)、Y(貨幣型)、M(備注型)及G(通用型)等。2.如果當(dāng)前沒有打開的數(shù)據(jù)庫(kù)或使用FREE短語(yǔ),則建立自由表。例1:在“教學(xué)管理”文件夾下建立一個(gè)名為“學(xué)生2”的自由表。在命令窗口輸入并執(zhí)行如下命令:CREATETABLE學(xué)生2FREE(學(xué)號(hào)c(7),姓名c(8),性別c(2),出生日期d,專業(yè)
4、c(10),入學(xué)成績(jī)n(5,1),貸款否l,照片g,簡(jiǎn)歷m)在自由表中不能建立主索引,也不能定義有效性規(guī)則。例2:打開“教學(xué)管理”數(shù)據(jù)庫(kù),在D盤根目錄的“教學(xué)管理”文件夾下創(chuàng)建“學(xué)生1”表,其中學(xué)號(hào)是主關(guān)鍵字(建立主索引,用PRIMARYKEY短語(yǔ)說(shuō)明),性別字段的默認(rèn)值定義為“男”(用DEFAULT短語(yǔ)說(shuō)明)。在命令窗口輸入并執(zhí)行如下命令:OPENDATABASEd:教學(xué)管理教學(xué)管理CREATETABLEd:教學(xué)管理學(xué)生1;(學(xué)號(hào)c(7)PRIMARYKEY,姓名c(8),性別c(2)DEFAULT“男”,出生日期d,專業(yè)c(10),入學(xué)成績(jī)n(5,1),貸款否l,照片
5、g,簡(jiǎn)歷m)執(zhí)行后,“教學(xué)管理”數(shù)據(jù)庫(kù)中就建立了一個(gè)名為“學(xué)生1”的表,此表尚無(wú)記錄(即為空表)。此表的定義及各有效性規(guī)則都自動(dòng)存放進(jìn)數(shù)據(jù)字典10.2.3修改表結(jié)構(gòu)修改表結(jié)構(gòu)的SQL語(yǔ)句是ALTERTABLE,用SQL語(yǔ)句修改表結(jié)構(gòu)時(shí),不需用USE命令打開表。1、添加新的字段或修改字段屬性格式:ALTERTABEL<表名>ADD
6、ALTER
7、Drop<字段名1><數(shù)據(jù)類型(寬度,小數(shù)位數(shù))>[字段的完整性約束][ADD
8、ALTER<字段名2><類型(寬度,小數(shù)位數(shù))>[字段的完整性約束],…]功能:修改<表名>所指定表的結(jié)構(gòu)(add增加新字段;drop刪除已有的字段;atler修改
9、原有的字段)。例3將學(xué)生1表的專業(yè)字段的寬度由原來(lái)的10改為12。ALTERTABLEd:教學(xué)管理學(xué)生1ALTER專業(yè)c(12)例4將學(xué)生1表的性別字段默認(rèn)值定義為”男”。ALTERTABLEd:教學(xué)管理學(xué)生1ALTER性別c(2)DEFAULT"男"例5為學(xué)生1表增加一個(gè)字符類型的電話字段。ALTERTABLE學(xué)生1ADD電話c(13)例6在人才檔案表中刪除“工作簡(jiǎn)歷”及“籍貫”字段及其約束規(guī)則。Altertable人才檔案drop工作簡(jiǎn)歷drop籍貫例7在人才檔案表中修改“姓名”及“性別”字段寬度。altertablexsdaalter性別c(20),姓名c(20)10
10、.2.4刪除表格式:DROPTABLE<表名>功能:刪除<表名>為名的表。例刪除學(xué)生1表。DROPTABLE學(xué)生110.3數(shù)據(jù)更新SQL語(yǔ)句的數(shù)據(jù)更新包括表中數(shù)據(jù)的插入、數(shù)據(jù)修改、數(shù)據(jù)刪除等相關(guān)操作。10.3.1插入記錄給表添加數(shù)據(jù)這里指在表的尾部添加一條記錄。InsertInto<表名>(<字段名1>[,<字段名2>……])Values(<表達(dá)式1>[,<表達(dá)式2>……])功能:在SQL中,INSERT語(yǔ)句用于數(shù)據(jù)插入。例1向?qū)W生表中插入新記錄。INSERTINTO