(專升本)《計(jì)算機(jī)網(wǎng)絡(luò)原理》數(shù)據(jù)庫_第1頁
(專升本)《計(jì)算機(jī)網(wǎng)絡(luò)原理》數(shù)據(jù)庫_第2頁
(專升本)《計(jì)算機(jī)網(wǎng)絡(luò)原理》數(shù)據(jù)庫_第3頁
(專升本)《計(jì)算機(jī)網(wǎng)絡(luò)原理》數(shù)據(jù)庫_第4頁
(專升本)《計(jì)算機(jī)網(wǎng)絡(luò)原理》數(shù)據(jù)庫_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

一、初識(shí)數(shù)據(jù)庫:1、什么是數(shù)據(jù)庫設(shè)計(jì)?數(shù)據(jù)庫設(shè)計(jì)就是將數(shù)據(jù)庫中的數(shù)據(jù)實(shí)體及這些數(shù)據(jù)實(shí)體之間的關(guān)系,進(jìn)行規(guī)劃和結(jié)構(gòu)化的過程。2、數(shù)據(jù)庫規(guī)范設(shè)計(jì):第一范式:原子性(官方總結(jié):每列都是不可再分的最小單位)(大白話:每列只能存一個(gè)值)第二范式:確保表中每列都跟主鍵相關(guān)第三范式:確保表中每列都與主鍵直接相關(guān),而不能間接相關(guān)(A\B\C三列,A列是主鍵,C列依賴B列,B列與A列直接相關(guān),這就是錯(cuò)誤的設(shè)計(jì),因?yàn)镃列不是與主鍵直接相關(guān))windowsr-->services.msc二、基本sql語句1、創(chuàng)建數(shù)據(jù)庫:createdatabase數(shù)據(jù)庫名;2、查看數(shù)據(jù)庫列表:showdatabases;3、使用數(shù)據(jù)庫:use數(shù)據(jù)庫名;4、數(shù)據(jù)類型:varchar字符串類型(對(duì)應(yīng)java中的String類型)dateYYYY-MM-DD時(shí)間類型timestampYYYYMMDDHHMMSS精度為1秒例:2018年某時(shí)刻~2019年某時(shí)刻5、創(chuàng)建表:創(chuàng)建表前必須使用某個(gè)數(shù)據(jù)庫createtable[ifnotexists]表名(字段1數(shù)據(jù)類型[字段屬性|約束][索引][注釋],字段2數(shù)據(jù)類型[字段屬性|約束][索引][注釋],....字段n數(shù)據(jù)類型[字段屬性|約束][索引]comment"字段注釋")[表類型][表字符集]comment="練習(xí)表";約束:非空約束:notnull主鍵約束:primarykey自動(dòng)增長:auto_increment單行注釋:#....多行注釋:/**/6、刪除數(shù)據(jù)庫:dropdatabase數(shù)據(jù)庫名;7、查看所有表:showtables;8、查看某個(gè)表:describe表名;9、刪除表:droptable表名;10、修改表名:altertable舊表名rename新表名;11、添加字段:altertable表名add字段名數(shù)據(jù)類型(屬性);12、修改字段:altertable表名change原字段名新字段名數(shù)據(jù)類型(屬性);13、刪除字段:altertable表名drop字段名;三、新增sql語句:1、標(biāo)準(zhǔn)寫法:insertinto表名(字段1,字段2...)value(對(duì)應(yīng)值,對(duì)應(yīng)值....)2、簡潔寫法:insertinto表名value(對(duì)應(yīng)值,對(duì)應(yīng)值....)注:value和values都可用3、insertinto表1select(字段)from表2注:表1和表2完全相同的情況下4、insertinto表名value(值1,(從別的表查出的值))四、修改sql語句:1、修改一條記錄:update表名set字段=新的值where條件2、修改多條記錄:update表名set字段1=新的值,字段2=新的值,...where條件五、刪除sql語句:1、刪除一條記錄:deletefrom表名where條件2、刪除表中所有數(shù)據(jù):truncatetable表名六:查詢sql語句:1、查詢表中所有數(shù)據(jù):select*from表名2、查詢表中id為1的數(shù)據(jù):select*from表名whereid=13、查詢表中某個(gè)字段,條件為id=1:select某字段from表名whereid=14、查詢某個(gè)范圍的記錄:select*from表名where查詢條件limit位置偏移量,行數(shù)注:常作用于分頁查詢位置偏移量:從第幾行開始查詢,從0開始行數(shù):查詢幾行5、查詢表中是否存在某條數(shù)據(jù):selectcount(1)as別名from表where條件selectcount(*)as別名from表where條件如果存在,結(jié)果為1,否則結(jié)果為06、一堆函數(shù):avg()---返回某字段的平均值max()---返回某字段的最大值min()---返回某字段的最小值sum()---返回某字段的和例:selectavg(某字段)from表名;7、關(guān)聯(lián)查詢(1)左關(guān)聯(lián):select要查詢的列from表1leftjoin表2on表1.關(guān)聯(lián)列=表2.關(guān)聯(lián)列where條件;注:右關(guān)聯(lián):將上述sql語句中的left改成right中間關(guān)聯(lián):將上述sql語句中的left改成inner(2)、直接關(guān)聯(lián):select要查詢的列from表1,表2where條件and表1.關(guān)聯(lián)列=表2.關(guān)聯(lián)列;8、子查詢:(1)、語法:select*from表名where字段1比較運(yùn)算符(子查詢);例:查詢成績大于吳春雷的成績信息select*frommarkwheregrade>(selectgradefrommarkwhereusername='wcl');(2)、語法:select*from表名where字段1in(子查詢);例:查詢成績?cè)?0~61范圍內(nèi)的成績信息select*frommarkwheregradein(selectgradefrommarkwheregrade<=61andgrade>=50);9、模糊查詢:語法:select*from表where某字段like'%字符1%';注:查詢某字段存在字符1的數(shù)據(jù)10、排序:語法:select*from表orderby字段名;注:查詢某表所有數(shù)據(jù),根據(jù)某字段進(jìn)行排序,默認(rèn)升序排列orderby字段名desc:為降序排列11、子查詢:exists(1)、語法:select*from表whereexists(子查詢)注:如果子查詢成立,才能查出結(jié)果,否則結(jié)果為空(2)、語法:select*from表1whereexists(select1from表2where表1.字段=表2.字段)注:exists可用于多表關(guān)聯(lián)查詢,子查詢語句可以直接利用主查詢語句的表12、casewhen判斷語句:語法:selectcase字段名when字段值1then返回值1when字段值2then返回值2....else返回值3end列別名from表名;七、事務(wù)、視圖、索引1、什么是事務(wù):事務(wù)是一種機(jī)制、一組操作序列,要么都執(zhí)行,要么都不執(zhí)行,是一個(gè)不可分割的邏輯元。2、事務(wù)四大屬性:(1)、原子性:一組操作序列作為一個(gè)整體去提交或回滾(2)、一致性:某個(gè)正在進(jìn)行的事務(wù)導(dǎo)致數(shù)據(jù)可能不在一致的狀態(tài),當(dāng)此事務(wù)成功完成時(shí),數(shù)據(jù)必須再次回到一致狀態(tài)。(3)、隔離性:對(duì)數(shù)據(jù)進(jìn)行修改的所有并發(fā)事務(wù)是彼此隔離的,事務(wù)相對(duì)都是獨(dú)立的(4)、持久性:不管系統(tǒng)是否發(fā)生故障,事務(wù)處理的結(jié)果都是永久的3、如何執(zhí)行事務(wù)(1)、開始事務(wù):begin或starttransaction(2)、提交事務(wù):commit(3)、回滾(撤銷)事務(wù):rollback注:查詢所有進(jìn)程:showprocesslist找到鎖死的進(jìn)程,kill鎖死進(jìn)程的id4、什么是視圖:視圖是另一種查看數(shù)據(jù)庫中一個(gè)或多個(gè)表數(shù)據(jù)的方法,視圖是一種虛擬表注:視圖作用:(1)、篩選所要查詢的行、列(2)、防止未經(jīng)許可的用戶訪問敏感數(shù)據(jù)(3)、將多個(gè)物理數(shù)據(jù)表抽象為一個(gè)邏輯數(shù)據(jù)表使用sql創(chuàng)建視圖:createview視圖名asselect語句;5

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論