版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
主講教師:姜云橋任務(wù)2.2數(shù)據(jù)的操作子項(xiàng)目2數(shù)據(jù)庫基礎(chǔ)開發(fā)任務(wù)背景學(xué)校要建立一個(gè)教學(xué)管理系統(tǒng)。根據(jù)需求分析,建立數(shù)據(jù)庫,數(shù)據(jù)表,接下來要初始化相關(guān)表數(shù)據(jù)。任務(wù)目標(biāo)1.能管理數(shù)據(jù)表數(shù)據(jù)2.能插入數(shù)據(jù)3.能修改數(shù)據(jù)4.能刪除數(shù)據(jù)知識目標(biāo)1.掌握插入INSERTINTO的語法2.了解REPLACEINTO、LOADDATAINFILE的語法3.掌握update...set...命令的語法4.掌握DELETE的語法能力目標(biāo)任務(wù)要求本任務(wù)將學(xué)習(xí)數(shù)據(jù)表中插入、修改和刪除數(shù)據(jù)。在任務(wù)實(shí)施過程中,要特別注意操作的語法結(jié)構(gòu)。任務(wù)必備知識想一想如何插入數(shù)據(jù)?任務(wù)必備知識2.2.1插入數(shù)據(jù)插入數(shù)據(jù)的方法很多,可以通過insertinto、replaceinto語句插入,也可以使用loaddatainfile方式將保存在文本文件中的數(shù)據(jù)插入到指定的表。一次可以插入一行或插入多行數(shù)據(jù)。任務(wù)必備知識insertintotable_name(col1,col2,...)values(val1,val2,...);2.2.1插入數(shù)據(jù)一、插入單行數(shù)據(jù)【任務(wù)2.2.1】向student表中插入如下數(shù)據(jù)任務(wù)必備知識mysql> insert intostudent(s_no,s_name,s_sex,s_birth,s_address,s_phone,s_photo,d_no)->values('132001','李平','男','2001-02-01','南京路1號',null,null,'D001');2.2.1插入數(shù)據(jù)任務(wù)必備知識2.2.1插入數(shù)據(jù)【任務(wù)2.2.1】再次用insertinto語句向student表中插入主鍵相同數(shù)據(jù)mysql> insert intostudent(s_no,s_name,s_sex,s_birth,s_address,s_phone,s_photo,d_no)->values('132001','李平','女','2023-02-01','南京路3號',null,null,'D001');ERROR1062(23000):Duplicateentry'132001'forkey'student.PRIMARY'任務(wù)必備知識2.2.1插入數(shù)據(jù)由于student表中已經(jīng)有132001學(xué)生的記錄,因此將出現(xiàn)主鍵沖突錯(cuò)誤,如果希望即使插入主鍵相同的數(shù)據(jù)也不會(huì)報(bào)錯(cuò),則可以使用關(guān)鍵字ignore:mysql> insert ignore intostudent(s_no,s_name,s_sex,s_birth,s_address,s_phone,s_photo,d_no)->values('132001','李平','女','2023-02-01','南京路3號',null,null,'D001')任務(wù)必備知識insertintotable_name(col1,col2,...)values(val1,val2,...),(val1,val2,...),...;2.2.1插入數(shù)據(jù)二、插入多行數(shù)據(jù)【任務(wù)2.2.3】一次性向student表中插入下列2行數(shù)據(jù)任務(wù)必備知識mysql> insert intostudent(s_no,s_name,s_sex,s_birth,s_address,s_phone,s_photo,d_no)->values('132002','葉明','女','2001-05-02','學(xué)院路1號',null,null,'D003'),->('132003','張?zhí)?,'男','2000-02-019','文明路6號',null,null,'D001');2.2.1插入數(shù)據(jù)任務(wù)必備知識insertintotable_name(col1,col2,...)selectcol1,col2,...;2.2.1插入數(shù)據(jù)三、插入查詢數(shù)據(jù)【任務(wù)2.2.4】將student表中對應(yīng)數(shù)據(jù)插入student_new表中。任務(wù)必備知識首先創(chuàng)建student_new表:mysql>createtablestudent_new->(->s_nochar(8)primarykey,->s_namevarchar(20),->s_sexenum('男','女')default'女',->s_birthdatenotnull,->d_nochar(4)->);將student表中對應(yīng)字段的數(shù)據(jù)插入student_new表:mysql>insertintostudent_new(s_no,s_name,s_sex,s_birth,d_no)->selects_no,s_name,s_sex,s_birth,d_nofromstudent;2.2.1插入數(shù)據(jù)任務(wù)必備知識當(dāng)插入主鍵相同的記錄時(shí)默認(rèn)會(huì)報(bào)錯(cuò),插入失敗,而有時(shí)我們希望當(dāng)插入的數(shù)據(jù)違反主鍵約束時(shí),執(zhí)行更新操作替換原表中的數(shù)據(jù),此時(shí)可通過ONDUPLICATEKEYupdate或REPLACE語句實(shí)現(xiàn)。2.2.1插入數(shù)據(jù)四、插入重復(fù)數(shù)據(jù).insert…onduplicatekeyupdateinsertintotable_name(col1,col2,...)values(val1,val2,...)onduplicatekeyupdateassignment_list;任務(wù)必備知識2.2.1插入數(shù)據(jù)【任務(wù)2.2.5】向student表中插入如下數(shù)據(jù),若數(shù)據(jù)存在,更新s_birth為’2023-03-02’mysql> insert intostudent(s_no,s_name,s_sex,s_birth,s_address,s_phone,s_photo,d_no)->values('122001','張群','男','2000-02-01','文明路8號',null,null,'D001')->onduplicatekeyupdate->s_birth='2023-03-02'任務(wù)必備知識2.2.1插入數(shù)據(jù)【任務(wù)2.2.6】向student表中插入如下數(shù)據(jù)若數(shù)據(jù)不存在,直接插入,若存在,更新為待插入的數(shù)據(jù)mysql> replace intostudent(s_no,s_name,s_sex,s_birth,s_address,s_phone,s_photo,d_no)->values('122001','張群','男','1991-02-01','文明路13號',null,null,'D002');任務(wù)必備知識MySQL還支持圖片的存儲(chǔ),圖片一般可以以路徑的形式來存儲(chǔ),即插入圖片采用直接插入圖片的存儲(chǔ)路徑。當(dāng)然,也可以直接插入圖片本身,只要用LOAD_FILE()函數(shù)即可。2.2.1插入數(shù)據(jù)五、插入圖片數(shù)據(jù)122110,程明,男,1991-02-01,D001,北京路123號,02066635425,picture.jpg其中,照片路徑為“D:\IMAGE\picture.jpg”。使用如下語句。
mysql>insertintostudentvalues('122110','程明','男','1991-02-01','D001','北京路123號','02066635425','D:\IMAGE\picture.jpg');【任務(wù)2.2.7】向student表中插入一行數(shù)據(jù)任務(wù)必備知識想一想如何修改數(shù)據(jù)?任務(wù)必備知識用update...set...命令對表中的數(shù)據(jù)進(jìn)行修改??梢孕薷囊粋€(gè)表的數(shù)據(jù),也可以修改多個(gè)表的數(shù)據(jù)。2.2.2修改數(shù)據(jù)updatetbl_namesetcol1=val1,col2=val2,...[wherewhere_condition][orderby...][limitrow_count]一、單表更新任務(wù)必備知識2.2.2修改數(shù)據(jù)mysql>updatecoursesetc_type='專業(yè)基礎(chǔ)課'wherec_no='A002';【任務(wù)2.2.8】將課程A002的類型修改為專業(yè)基礎(chǔ)課程任務(wù)必備知識2.2.2修改數(shù)據(jù)updatetable_referencessetcol1=val1,col2=val2,...[wherewhere_condition]二、多表更新說明:1)更新多個(gè)表中的數(shù)據(jù),意味著SET涉及的字段分屬不同的表。2)多表更新不支持orderby和limit子句。3)多表更新中多個(gè)字段的賦值執(zhí)行順序是不確定的。任務(wù)必備知識2.2.2修改數(shù)據(jù)mysql>updatestudentstjoinscoresconst.s_no=sc.s_no->joincoursecsoncs.c_no=sc.c_no->setst.s_s_address='人民路21號',sc.mark=85->wherest.s_name='聶鳳卿'andcs.c_name='MYSQL';【任務(wù)2.2.9】同時(shí)更新“聶鳳卿“的地址為”人民路21號“,MYSQL課程的成績?yōu)?5任務(wù)必備知識
SET子句:根據(jù)WHERE子句中指定的條件,對符合條件的數(shù)據(jù)行進(jìn)行修改。若語句中不設(shè)定WHERE子句,則更新所有行。分析與討論任務(wù)必備知識想一想如何刪除數(shù)據(jù)?任務(wù)必備知識2.2.3刪除數(shù)據(jù)deletefromtbl_name[wherewhere_condition][orderby...][limitrow_count]一、單表刪除說明:1)只刪除滿足where_condition條件的數(shù)據(jù)行,沒有指定條件將會(huì)刪除表中的全部數(shù)據(jù)。2)如果指定了orderby和limit子句,按照順序刪除row_count行數(shù)據(jù)。3)數(shù)據(jù)刪除后將不能恢復(fù),因此,在執(zhí)行刪除之前對數(shù)據(jù)做好備份。任務(wù)必備知識mysql>deletefromstudentwheres_sex='女';【任務(wù)2.2.10】刪除女生記錄2.2.3刪除數(shù)據(jù)mysql>deletefromscorewherec_no='B001'andmark<60;【任務(wù)2.2.11】刪除B001課程不及格的成績記錄任務(wù)必備知識mysql>deletefromscoreorderbymarklimit3;【任務(wù)2.2.12】刪除score表中分?jǐn)?shù)最低的3行記錄2.2.3刪除數(shù)據(jù)mysql>deletefromstudent_new;或者mysql>truncatestudent_new;【任務(wù)2.2.13】清空student_new表中的數(shù)據(jù)任務(wù)必備知識2.2.3刪除數(shù)據(jù)deletetbl_name1,tbl_name2,...fromtable_references[wherewhere_condition]或者deletefromtbl_name1,tbl_name2,...usingtable_references[wherewhere_condition]一、多表刪除任務(wù)必備知識mysql>deletest,sc->fromstudentstjoinscoresconst.s_no=sc.s_no->wherest.s_name='聶鳳卿';或者mysql>deletefromst,sc->usingstudentstjoinscoresconst.s_no=sc.s_no->wherest.s_name='聶鳳卿';【任務(wù)2.2.14】同時(shí)刪除“聶鳳卿”的信息,以及相應(yīng)的課程成績2.2.3刪除數(shù)據(jù)任務(wù)必備知識(1)QUICK修飾符:可以加快部分種類的刪除操作的速度。(2)FROM子句:用于指定從何處刪除數(shù)據(jù)。(3)WHERE子句指定的刪除條件。如果省略WHERE子句則刪除該表的所有行。(4)ORDERBY子句:各行按照子句中指定的順序進(jìn)行刪除,此子句只在與LIMIT聯(lián)用時(shí)才起作用。ORDERBY子句和LIMIT子句的具體定義將在任務(wù)10中介紹。
分析與討論任務(wù)必備知識(5)LIMIT子句:用于告知服務(wù)器在控制命令被返回到客戶端前被刪除的行的最大值。(6)數(shù)據(jù)刪除后將不能恢復(fù),因此,在執(zhí)行刪除之前一定要對數(shù)據(jù)做好備份。分析與討論任務(wù)實(shí)施一、在人事管理數(shù)據(jù)庫rsgl中進(jìn)行如下操作:1.用insertinto語句向department表插入所有數(shù)據(jù)。數(shù)據(jù)如下:('A001','辦公室'),('A002','人事處'),('A003','宣傳部'),('A004','教務(wù)處'),('A005','科技處'),('A006','后勤處'),('B001','信息學(xué)院'),('B002','藝術(shù)學(xué)院'),('B003','外語學(xué)院'),('B004','金融學(xué)院'),('B005','建筑學(xué)院’);2.以文本文件的方式將數(shù)據(jù)裝入到數(shù)據(jù)表employee,文件放在“D:\MYSQL\employee.txt”內(nèi)。(可選命令可參考數(shù)據(jù)恢復(fù))任務(wù)實(shí)施3.用insertinto語句一次性向salary表插入所有數(shù)據(jù)。數(shù)據(jù)如下:('100100',2000.00,4000.00,2266.00,1320.00,300.00,100.00),('100101',3000.00,5000.00,2278.00,1460.00,450.00,30.00),('100102',2500.00,4500.00,2500.00,1300.00,500.00,52.00),('100103',2600.00,4500.00,2300.00,1350.00,600.00,60.00),('100104',2400.00,4600.00,2500.00,1200.00,630.00,50.00),('100105',2600.00,3500.00,2300.00,1000.00,650.00,60.00),('100106',2400.00,4300.00,2600.00,1200.00,300.00,40.00),('100330
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(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ǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年鶴壁能源化工職業(yè)學(xué)院單招綜合素質(zhì)筆試模擬試題含詳細(xì)答案解析
- 2026年湖北中醫(yī)藥高等專科學(xué)校單招職業(yè)技能考試備考試題含詳細(xì)答案解析
- 2026年山西金融職業(yè)學(xué)院單招綜合素質(zhì)筆試參考題庫含詳細(xì)答案解析
- 2026年石家莊科技信息職業(yè)學(xué)院單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 2026福建晉江市市政工程建設(shè)有限公司權(quán)屬公司招聘15人考試重點(diǎn)試題及答案解析
- 2026新疆十六團(tuán)幼兒園編外人員招聘4人參考考試試題及答案解析
- 2026年福建師范大學(xué)協(xié)和學(xué)院單招綜合素質(zhì)考試參考題庫含詳細(xì)答案解析
- 2026年內(nèi)蒙古北方職業(yè)技術(shù)學(xué)院單招綜合素質(zhì)筆試備考試題含詳細(xì)答案解析
- 2026年湖南九嶷職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試模擬試題含詳細(xì)答案解析
- 2026年山東科技職業(yè)學(xué)院高職單招職業(yè)適應(yīng)性測試模擬試題及答案詳細(xì)解析
- 白內(nèi)障手術(shù)術(shù)前準(zhǔn)備和術(shù)后護(hù)理流程
- 多動(dòng)癥兒童在感統(tǒng)訓(xùn)練
- 環(huán)保生產(chǎn)應(yīng)急預(yù)案
- 高校盤點(diǎn)清查系統(tǒng)介紹
- 殯葬禮儀服務(wù)創(chuàng)新創(chuàng)業(yè)項(xiàng)目商業(yè)計(jì)劃書
- 數(shù)據(jù)驅(qū)動(dòng)的零售商品陳列優(yōu)化方案
- 顱內(nèi)感染指南解讀
- 四川省成都市2025年中考語文真題試卷
- 2025年中國蠕變試驗(yàn)機(jī)數(shù)據(jù)監(jiān)測研究報(bào)告
- 蘇東坡傳全書課件
- 員工利益沖突風(fēng)險(xiǎn)識別與應(yīng)對
評論
0/150
提交評論