版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
數(shù)據(jù)庫操作Presentedby:MichaelAug2007
數(shù)據(jù)庫操作Presentedby:MichaelAug數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式第一范式
定義:如果關(guān)系R中所有屬性的值域都是單純域,那么關(guān)系模式R是第一范式的
那么符合第一模式的特點(diǎn)就有
1)有主關(guān)鍵字
2)主鍵不能為空,
3)主鍵不能重復(fù),
4)字段不可以再分
例如:
StudyNo
|
Name
|
Sex
|
Contact
20040901
john
Male
Email:kkkk@,phone:222456
20040901
mary
famale
email:kkk@phone:123455
以上的表就不符合,第一范式:主鍵重復(fù)(實(shí)際中數(shù)據(jù)庫不允許重復(fù)的),而且Contact字段可以再分
所以變更為正確的是
StudyNo
|
Name
|
Sex
|
|
Phone
20040901
john
Male
kkkk@
222456
20040902
mary
famale
kkk@
123455數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式第二范式:
定義:如果關(guān)系模式R是第一范式的,而且關(guān)系中每一個(gè)非主屬性不部分依賴于主鍵,稱R是第二范式的。
所以第二范式的主要任務(wù)就是滿足第一范式的前提下,消除部分函數(shù)依賴。
StudyNo
|
Name
|
Sex
|
|
Phone
|
ClassNo
|ClassAddress
01
john
Male
kkkk@
222456
200401
A樓2
02
mary
famale
kkk@
123455
200402
A樓3
這個(gè)表完全滿足于第一范式,
主鍵由StudyNo和ClassNo組成,這樣才能定位到指定行
但是,ClassAddress部分依賴于關(guān)鍵字(ClassNo-〉ClassAddress),
所以要變?yōu)閮蓚€(gè)表
表一
StudyNo
|
Name
|
Sex
|
|
Phone|
ClassNo
01
john
Male
kkkk@
222456
200401
02
mary
famale
kkk@
123455
200402
表二
ClassNo
|ClassAddress
200401
A樓2
200402
A樓3
數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式
第三范式:
滿足第二范式的前提下,消除傳遞依賴。
例:
StudyNo
|
Name
|
Sex
|
|
bounsLevel
|
bouns
20040901
john
Male
kkkk@
優(yōu)秀
$1000
20040902
mary
famale
kkk@
良
$600
這個(gè)完全滿足了第二范式,但是bounsLevel和bouns存在傳遞依賴
更改為:
StudyNo
|
Name
|
Sex
|
|
bouunsNo
20040901
john
Male
kkkk@
1
20040902
mary
famale
kkk@
2
bounsNo
|
bounsLevel
|
bouns
1
優(yōu)秀
$1000
2
良
$600
這里我比較喜歡用bounsNo作為主鍵,
一般滿足前三個(gè)范式就可以避免數(shù)據(jù)冗余。數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式數(shù)據(jù)庫基礎(chǔ)SQL語言數(shù)據(jù)定義(DataDefinition)CREATETABLE,DROPTABLE…數(shù)據(jù)操縱(DataManipulation)SELECT,INSERT,UPDATE,DELETE數(shù)據(jù)控制(DataControl)COMMIT,ROLLBACK數(shù)據(jù)庫基礎(chǔ)SQL語言數(shù)據(jù)庫基礎(chǔ)OPENSQL語言O(shè)PENSQL是SQL的子集OPENSQL獨(dú)立于不同類型的數(shù)據(jù)庫OPENSQL是DML語言數(shù)據(jù)庫基礎(chǔ)OPENSQL語言數(shù)據(jù)庫基礎(chǔ)使用OPENSQL的效率原則盡可能減少滿足條件的數(shù)據(jù)條目數(shù)量減少傳輸數(shù)據(jù)量,以減少網(wǎng)絡(luò)流量減少訪問數(shù)據(jù)庫表的數(shù)量建超查詢難度減少數(shù)據(jù)庫負(fù)載數(shù)據(jù)庫基礎(chǔ)使用OPENSQL的效率原則數(shù)據(jù)表維護(hù)數(shù)據(jù)字典TCODE:se11需要掌握:表字段外部關(guān)鍵字技術(shù)設(shè)定(Technicalsetting)索引DataElementDomain數(shù)據(jù)表維護(hù)數(shù)據(jù)字典數(shù)據(jù)表維護(hù)數(shù)據(jù)字典新建一個(gè)數(shù)據(jù)表ZXXX數(shù)據(jù)表維護(hù)數(shù)據(jù)字典SELECTSELECTSELECT…FROM…INTO…WHERE…GROUPBY…HAVING…ORDERBY…SELECTSELECTSELECT選擇單行數(shù)據(jù)SELECTSINGE…FROM…INTO…WHERE…
演示:選擇全部字段到workarea選擇指定字段到變量SELECT選擇單行數(shù)據(jù)SELECT選擇多行數(shù)據(jù)SELECT[DISTINCT]… …ENDSELECTSELECT…INTO|APPENDING [CORRESPONDINGFIELDSOF]TABLEitabSELECT…INTOTABLEitabPACKAGESIZEn…ENDSELECTSELECT選擇多行數(shù)據(jù)SELECT指定查詢條件比較運(yùn)算符=><<><=>=范圍限定符號(hào)BETWEEN…AND…字符比較運(yùn)算符號(hào)[NOT]LIKE..[EXCAPEh]_代表單個(gè)字符%代表多個(gè)字符檢查列表值[NOT]INSELECT指定查詢條件SELECT指定查詢條件檢查空值IS[NOT]NULL…檢查選擇表INsettab…SELECT指定查詢條件SELECT多表組合查詢-SELECT語句嵌套SELECT …
SELECT … ENDSELECT …ENDSELECTSELECT多表組合查詢-SELECT語句嵌套SELECT多表組合查詢-從內(nèi)表查詢SELECT…FORALLENTRIESINitabWHETE…SELECT多表組合查詢-從內(nèi)表查詢SELECT多表組合查詢-使用視圖通過View進(jìn)行查詢SELECT多表組合查詢-使用視圖SELECT多表組合查詢-結(jié)合查詢SELECT…FROMtable[INNER]JOINtable1[ASalias1]oncondition[INNER]JOINtable2[ASalias2]onconditionSELECT多表組合查詢-結(jié)合查詢SELECT多表組合查詢-子查詢SELECT…WHEREEXIST(SELECT…)SELECT…WHEREfieldIN(SELECT…)SELECT…WHEREfield=(SELECT…)SELECT多表組合查詢-子查詢SELECT多表組合查詢-統(tǒng)計(jì)函數(shù)MaxMinSumAvgCountSELECT多表組合查詢-統(tǒng)計(jì)函數(shù)SELECT多表組合查詢-分組SELECT…WHERE…GROUPBY…HAVING…SELECT多表組合查詢-分組SELECT多表組合查詢-排序SELECT…WHERE…ORDERBYf1[ASCENDING|DESCENDING]f2[ASCENDING|DESCENDING]SELECT多表組合查詢-排序SELECT多表組合查詢-其他使用表工作區(qū)TABLESdbtab動(dòng)態(tài)指定數(shù)據(jù)庫表SELECT…FROM(dbtabname)指定ClientSELECT…FROM…CLIENT
SPECIFIED
設(shè)置緩沖機(jī)制SELECT…FROMdbtabBYPASSING
BUFFER…限定行數(shù)SELECT…FROMdbtabUPTOnROWS…SELECT多表組合查詢-其他SELECT多表組合查詢-操作性能分析GETRUNTIMEFIELDf.TCODE:se30SELECT多表組合查詢-操作性能分析SELECT多表組合查詢-使用光標(biāo)OPENCURSOR[WITHHOLD]cFORSELECT…FETCHNEXTCURSORcINTOtarget.CLOSECURSORc.SELECT多表組合查詢-使用光標(biāo)更新數(shù)據(jù)更新數(shù)據(jù)INSERTUPDATEMODIFYDELETESy-subrc 操作是否成功Sy-dbcnt 影響的行數(shù)更新數(shù)據(jù)更新數(shù)據(jù)更新數(shù)據(jù)INSERTINSERTINTOdbtabVALUESwa.INSERTINTOdbtabFROMwa.INSERTdbtabFROMTABLEitab[ACCEPTINGDUPLICTEKEYS].更新數(shù)據(jù)INSERT更新數(shù)據(jù)UPDATEUPDATEdbtabSETf1=g1…fn=gnWHERE…UPDATEdbtabFROMwa.UPDATEdbtabFROMTABLEitab.更新數(shù)據(jù)UPDATE更新數(shù)據(jù)MODIFY(INSERT+UPDATE)MODIFYdbtabFROMwa.MODIFYdbtabFROMTABLEitab.更新數(shù)據(jù)MODIFY(INSERT+UPDATE)更新數(shù)據(jù)DELETEDELETEdbtabFROMWHERE…DELETEdbtabFROMwa.DLETEdbtab[CLIENTSPECIFIED]FROMTABLEitab.更新數(shù)據(jù)DELETE數(shù)據(jù)一致性SAPLUWLUW(LogicalUnitofWork)數(shù)據(jù)庫LUW數(shù)據(jù)一致性SAPLUW數(shù)據(jù)一致性SAPLUWCOMMITWORK.ROLLBACKWORK.PERFORM..ONCOMMIT.CALLFUNCTION…INUPDATETASK.數(shù)據(jù)一致性SAPLUW數(shù)據(jù)一致性SAP數(shù)據(jù)鎖定TCODE:se11Lockobject(鎖定對(duì)象)Functionmodule:ENQUEUE_<LOCKOBJECT>DEQUEUE_<LOCKOBJECT>數(shù)據(jù)一致性SAP數(shù)據(jù)鎖定數(shù)據(jù)一致性用戶權(quán)限檢查TCODE:su21AuthorizationobjectsAUTHORITY-CHECKOBJECT‘object’ ID‘name1’fieldf1 ID‘name2’fieldf2 ID‘name’dumySy-subrc 判斷檢查結(jié)果數(shù)據(jù)一致性用戶權(quán)限檢查數(shù)據(jù)一致性文件接口OPENDATASETdsn<options>.CLOSEDATASETdsn.DELETEDATASETdsn.TRANSFERfTOdsn[LENGTHlen].READDATASETdsnINTOf[LENGTHlen].數(shù)據(jù)一致性文件接口數(shù)據(jù)一致性文件接口-FunctionFILE_GET_NAMEDOWNLOADWS_DOWNLOADUPLOADWS_UPLOAD數(shù)據(jù)一致性文件接口-Function數(shù)據(jù)一致性數(shù)據(jù)簇EXPORTf1[FROMg1]f2[FROMg2]TOmediumIDid.IMPORTf1[FROMg1]f2[FROMg2]FROMmediumIDid.Medium(存儲(chǔ)區(qū)域):MEMORY(內(nèi)存)FREEMEMORYIDid.DATABASE(數(shù)據(jù)表)Table:INDX數(shù)據(jù)一致性數(shù)據(jù)簇結(jié)束
謝謝大家!結(jié)束數(shù)據(jù)庫操作Presentedby:MichaelAug2007
數(shù)據(jù)庫操作Presentedby:MichaelAug數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式第一范式
定義:如果關(guān)系R中所有屬性的值域都是單純域,那么關(guān)系模式R是第一范式的
那么符合第一模式的特點(diǎn)就有
1)有主關(guān)鍵字
2)主鍵不能為空,
3)主鍵不能重復(fù),
4)字段不可以再分
例如:
StudyNo
|
Name
|
Sex
|
Contact
20040901
john
Male
Email:kkkk@,phone:222456
20040901
mary
famale
email:kkk@phone:123455
以上的表就不符合,第一范式:主鍵重復(fù)(實(shí)際中數(shù)據(jù)庫不允許重復(fù)的),而且Contact字段可以再分
所以變更為正確的是
StudyNo
|
Name
|
Sex
|
|
Phone
20040901
john
Male
kkkk@
222456
20040902
mary
famale
kkk@
123455數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式第二范式:
定義:如果關(guān)系模式R是第一范式的,而且關(guān)系中每一個(gè)非主屬性不部分依賴于主鍵,稱R是第二范式的。
所以第二范式的主要任務(wù)就是滿足第一范式的前提下,消除部分函數(shù)依賴。
StudyNo
|
Name
|
Sex
|
|
Phone
|
ClassNo
|ClassAddress
01
john
Male
kkkk@
222456
200401
A樓2
02
mary
famale
kkk@
123455
200402
A樓3
這個(gè)表完全滿足于第一范式,
主鍵由StudyNo和ClassNo組成,這樣才能定位到指定行
但是,ClassAddress部分依賴于關(guān)鍵字(ClassNo-〉ClassAddress),
所以要變?yōu)閮蓚€(gè)表
表一
StudyNo
|
Name
|
Sex
|
|
Phone|
ClassNo
01
john
Male
kkkk@
222456
200401
02
mary
famale
kkk@
123455
200402
表二
ClassNo
|ClassAddress
200401
A樓2
200402
A樓3
數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式
第三范式:
滿足第二范式的前提下,消除傳遞依賴。
例:
StudyNo
|
Name
|
Sex
|
|
bounsLevel
|
bouns
20040901
john
Male
kkkk@
優(yōu)秀
$1000
20040902
mary
famale
kkk@
良
$600
這個(gè)完全滿足了第二范式,但是bounsLevel和bouns存在傳遞依賴
更改為:
StudyNo
|
Name
|
Sex
|
|
bouunsNo
20040901
john
Male
kkkk@
1
20040902
mary
famale
kkk@
2
bounsNo
|
bounsLevel
|
bouns
1
優(yōu)秀
$1000
2
良
$600
這里我比較喜歡用bounsNo作為主鍵,
一般滿足前三個(gè)范式就可以避免數(shù)據(jù)冗余。數(shù)據(jù)庫基礎(chǔ)數(shù)據(jù)庫三大范式數(shù)據(jù)庫基礎(chǔ)SQL語言數(shù)據(jù)定義(DataDefinition)CREATETABLE,DROPTABLE…數(shù)據(jù)操縱(DataManipulation)SELECT,INSERT,UPDATE,DELETE數(shù)據(jù)控制(DataControl)COMMIT,ROLLBACK數(shù)據(jù)庫基礎(chǔ)SQL語言數(shù)據(jù)庫基礎(chǔ)OPENSQL語言O(shè)PENSQL是SQL的子集OPENSQL獨(dú)立于不同類型的數(shù)據(jù)庫OPENSQL是DML語言數(shù)據(jù)庫基礎(chǔ)OPENSQL語言數(shù)據(jù)庫基礎(chǔ)使用OPENSQL的效率原則盡可能減少滿足條件的數(shù)據(jù)條目數(shù)量減少傳輸數(shù)據(jù)量,以減少網(wǎng)絡(luò)流量減少訪問數(shù)據(jù)庫表的數(shù)量建超查詢難度減少數(shù)據(jù)庫負(fù)載數(shù)據(jù)庫基礎(chǔ)使用OPENSQL的效率原則數(shù)據(jù)表維護(hù)數(shù)據(jù)字典TCODE:se11需要掌握:表字段外部關(guān)鍵字技術(shù)設(shè)定(Technicalsetting)索引DataElementDomain數(shù)據(jù)表維護(hù)數(shù)據(jù)字典數(shù)據(jù)表維護(hù)數(shù)據(jù)字典新建一個(gè)數(shù)據(jù)表ZXXX數(shù)據(jù)表維護(hù)數(shù)據(jù)字典SELECTSELECTSELECT…FROM…INTO…WHERE…GROUPBY…HAVING…ORDERBY…SELECTSELECTSELECT選擇單行數(shù)據(jù)SELECTSINGE…FROM…INTO…WHERE…
演示:選擇全部字段到workarea選擇指定字段到變量SELECT選擇單行數(shù)據(jù)SELECT選擇多行數(shù)據(jù)SELECT[DISTINCT]… …ENDSELECTSELECT…INTO|APPENDING [CORRESPONDINGFIELDSOF]TABLEitabSELECT…INTOTABLEitabPACKAGESIZEn…ENDSELECTSELECT選擇多行數(shù)據(jù)SELECT指定查詢條件比較運(yùn)算符=><<><=>=范圍限定符號(hào)BETWEEN…AND…字符比較運(yùn)算符號(hào)[NOT]LIKE..[EXCAPEh]_代表單個(gè)字符%代表多個(gè)字符檢查列表值[NOT]INSELECT指定查詢條件SELECT指定查詢條件檢查空值IS[NOT]NULL…檢查選擇表INsettab…SELECT指定查詢條件SELECT多表組合查詢-SELECT語句嵌套SELECT …
SELECT … ENDSELECT …ENDSELECTSELECT多表組合查詢-SELECT語句嵌套SELECT多表組合查詢-從內(nèi)表查詢SELECT…FORALLENTRIESINitabWHETE…SELECT多表組合查詢-從內(nèi)表查詢SELECT多表組合查詢-使用視圖通過View進(jìn)行查詢SELECT多表組合查詢-使用視圖SELECT多表組合查詢-結(jié)合查詢SELECT…FROMtable[INNER]JOINtable1[ASalias1]oncondition[INNER]JOINtable2[ASalias2]onconditionSELECT多表組合查詢-結(jié)合查詢SELECT多表組合查詢-子查詢SELECT…WHEREEXIST(SELECT…)SELECT…WHEREfieldIN(SELECT…)SELECT…WHEREfield=(SELECT…)SELECT多表組合查詢-子查詢SELECT多表組合查詢-統(tǒng)計(jì)函數(shù)MaxMinSumAvgCountSELECT多表組合查詢-統(tǒng)計(jì)函數(shù)SELECT多表組合查詢-分組SELECT…WHERE…GROUPBY…HAVING…SELECT多表組合查詢-分組SELECT多表組合查詢-排序SELECT…WHERE…ORDERBYf1[ASCENDING|DESCENDING]f2[ASCENDING|DESCENDING]SELECT多表組合查詢-排序SELECT多表組合查詢-其他使用表工作區(qū)TABLESdbtab動(dòng)態(tài)指定數(shù)據(jù)庫表SELECT…FROM(dbtabname)指定ClientSELECT…FROM…CLIENT
SPECIFIED
設(shè)置緩沖機(jī)制SELECT…FROMdbtabBYPASSING
BUFFER…限定行數(shù)SELECT…FROMdbtabUPTOnROWS…SELECT多表組合查詢-其他SELECT多表組合查詢-操作性能分析GETRUNTIMEFIELDf.TCODE:se30SELECT多表組合查詢-操作性能分析SELECT多表組合查詢-使用光標(biāo)OPENCURSOR[WITHHOLD]cFORSELECT…FETCHNEXTCURSORcINTOtarget.CLOSECURSORc.SELECT多表組合查詢-使用光標(biāo)更新數(shù)據(jù)更新數(shù)據(jù)INSERTUPDATEMODIFYDELETESy-subrc 操作是否成功Sy-dbcnt 影響的行數(shù)更新數(shù)據(jù)更新數(shù)據(jù)更新數(shù)據(jù)INSERTINSERTINTOdbtabVALUESwa.INSERTINTOdbtabFROMwa.INSERTdbtabFROMTABLEitab[ACCEPTINGDUPLICTEKEYS].更新數(shù)據(jù)INSERT更新數(shù)據(jù)UPDATEUPDATEdbtabSETf1=g1…fn=gnWHERE…UPDATEdbtabFROMwa.UPDATEdbtabFROMTABLEitab.更新數(shù)據(jù)UPDATE
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 涂料購買合同范本
- 2024年林地合作經(jīng)營合同書
- 場地借用協(xié)議
- 標(biāo)準(zhǔn)房屋抵押合同范本
- 成都市家庭清潔工程合同示范
- 2024年空心磚購銷合同
- 車輛買賣合同范本經(jīng)典版
- 廣東省房產(chǎn)租賃協(xié)議模板
- 2024年招投標(biāo)的實(shí)習(xí)報(bào)告
- 大學(xué)生臨時(shí)就業(yè)協(xié)議書
- 肩關(guān)節(jié)脫位護(hù)理查房課件
- 酒店前臺(tái)交接班記錄表
- 大班科學(xué)《奇妙的信》課件
- 小學(xué)性教育教案課件
- 人教部編版六年級(jí)上冊(cè)道德與法治課件:83《特殊關(guān)愛 助我成長》
- 深圳地鐵車站半蓋明挖順筑法施工技術(shù)培訓(xùn)講義(53PPT)
- 小學(xué)數(shù)學(xué)北師大三年級(jí)上冊(cè)七年、月、日《年月日》第1課時(shí)第2次教學(xué)設(shè)計(jì)
- 樂理說課稿課件
- 高一年級(jí)上學(xué)期語文期末考試題及命題說明
- 新教材人教鄂教版科學(xué)四年級(jí)上冊(cè)第一、二單元檢測卷(含答案)
- 六年級(jí)上冊(cè)英語教案 Module 9 Unit 2 I want to go to Shanghai. 外研版(三起)
評(píng)論
0/150
提交評(píng)論