版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
后來(lái),數(shù)據(jù)可以在磁帶上,順序的、寫入磁帶 以樹(shù)型結(jié)構(gòu)表示實(shí)體及其之間的聯(lián)系。關(guān)系只支持一對(duì)多。代表數(shù)據(jù)庫(kù)IBMIMS多個(gè)父結(jié)點(diǎn),結(jié)點(diǎn)之間支持可以多對(duì)多關(guān)聯(lián)。關(guān)系模型比網(wǎng)狀模型、層次模型更簡(jiǎn)單,不需要關(guān)系數(shù)的物理細(xì)節(jié),專心于數(shù)據(jù)的邏輯構(gòu)建,而且關(guān)系模型的嚴(yán)格的數(shù)學(xué)理論基礎(chǔ)支撐。1970年,IBM的研究員E.F.Codd了名為“ARelationalModelofDataforLargeSharedDataBanks”的 基于關(guān)系模型構(gòu)建的數(shù)據(jù)庫(kù)系統(tǒng)成為RDBMS(RelationalDataBaseSystem)IBMDB2、Oracle的Oracle和Mysql、微軟的MSSQL。以前的infomix、Sybase(LarryElsn仔細(xì)閱讀了IBM的關(guān)系數(shù)據(jù)庫(kù)的 ,敏銳在這個(gè)研究基礎(chǔ)上可以開(kāi)發(fā)軟件系統(tǒng)。他們決定開(kāi)發(fā)通用數(shù)據(jù)庫(kù)系統(tǒng)Oacle,這個(gè)名字來(lái)源于他們?cè)o局做過(guò)的項(xiàng)目名。幾個(gè)月后,他們就開(kāi)發(fā)了Oacle.。Oacle快速的被推銷,但是很不穩(wěn)定。直到199年的時(shí)候,Oacl7才逐漸穩(wěn)定下來(lái),并取得巨大成功。2001年的i版本被廣泛應(yīng)用。年 日,甲骨文公司宣布將以每股.50,總計(jì)74億美金收購(gòu)su(計(jì)算機(jī)系統(tǒng))公司。2010年1功收購(gòu)。1985年幾個(gè)瑞典人為大型零售商的項(xiàng)目設(shè)計(jì)了一種利用索引順序存取數(shù)據(jù)的軟件,這就是ySA的前身。年,ySL.0發(fā)布,隨后發(fā)布了.1.1版本,并開(kāi)始往其它平臺(tái)移植。2000年yS采用GPL協(xié)議開(kāi)源。ySL.開(kāi)始支持MySAM、InDB引擎。2005年10月,ySL.0成為里程碑版本。2009年1月,在Oracle收購(gòu)MySQL之前,MontyWidenius擔(dān)心收購(gòu),就從MySQLServer5.5開(kāi)始一條新的GPL分MySQL的引擎是插件化的,可以支持很多種引擎:MyISASM,不支持事務(wù),插入、查詢速度快。InnoDB,支持事務(wù),行級(jí)鎖,MySQL5.5起的默認(rèn)引擎去據(jù)庫(kù)、EC設(shè)備,可以說(shuō)。而使用這些架構(gòu)的企業(yè),不但采購(gòu)、成本極高,架構(gòu)還掌握在他人手中。對(duì)于阿里巴巴這樣大規(guī)模的互聯(lián)網(wǎng)應(yīng)用,應(yīng)該采用開(kāi)源、開(kāi)放的系統(tǒng)架構(gòu)。這種思路并不是阿里巴巴的新發(fā)明,國(guó)外的谷歌、 、亞馬遜等早已為之。只不過(guò)它們幾乎一開(kāi)始就有沒(méi)有采用T商業(yè)公司的架構(gòu),所以他們也不用去IE”。數(shù)據(jù)庫(kù)流行度 使用yum安裝rpm包,Cnts自帶的版本太低,建議安裝5.以版。推薦安裝MriB,或者Peco版本。#yuminstallPercona-Server-shared-55-5.5.45-rel37.4.el6.x86_64.rpmPercona-Server- #yuminstallPercona-Server-shared-55-5.5.45-rel37.4.el6.x86_64.rpmPercona-Server- 5.5.45-rel37.4.el6.x86_64.rpmPercona-Server-server-55-5.5.45-rel37.4.el6.x86_64.rpm#servicemysql#mysql_secure_installation#mysql-uroot-p<test.sqltest.sqlSQLSQL是結(jié)構(gòu)化查詢語(yǔ)言StructuredQueryLanguage。1987年被ISO組織標(biāo)準(zhǔn)化。GRANTALLGRANTALLONemployees.*TO'wayne'@'%'IDENTIFIEDby'wayne';REVOKEALLON*.*FROMwayne;*為通配符,指代任意庫(kù)或者任意表。*.*%為通配符,它是SQL刪除用戶(慎用
DROPDROPUSERCREATECREATEDATABASEIFNOTEXISTSgogsCHARACTERSETutf8mb4COLLATECHARACTERSET指定字符集。utf8mb4是utf8的擴(kuò)展,支持4字節(jié)utf8mb4,需要MySQL5.5.3+。DROPDROPDATABASEIFEXISTSCREATECREATETABLE`employees``emp_no`int(11)NOT`birth_date`dateNOT`first_name`varchar(14)NOT`last_name`varchar(16)NOT`gender`enum('M','F')NOT`hire_date`dateNOTNULL,PRIMARYKEY(`emp_no`))ENGINE=InnoDBDEFAULT{DESCRIBE|DESC}tbl_name[col_name|DESCDESCDESCemployeesDROPDROPDATABASEIFEXISTSCREATEDATABASEIFNOTEXISTStestCHARACTERSETutf8mb4COLLATECREATECREATETABLE`reg``id`int(11)NOT`loginname`varchar(50)DEFAULT`name`varchar(64)DEFAULT`password`varchar(128)DEFAULTNULL,PRIMARYKEY(`id`))PRIMARYKEY表中一列或者多列組成唯一的y,也就是通過(guò)這一個(gè)或者多個(gè)列能唯一的標(biāo)識(shí)一條記錄。主鍵的列不能包含空值l。主鍵往往設(shè)置為整型、長(zhǎng)整型,且自增AU_NEENT。表中可以沒(méi)有主鍵,但是,一般表設(shè)計(jì)中,往往都會(huì)有主鍵。 主鍵索引,主鍵會(huì)自動(dòng)建立主鍵索引,主鍵本身就是為了快速定位唯一記錄的唯一索引,表中的索引列組成的索引必須唯一,但可以為空,非空值必須唯一普通索引,沒(méi)有唯一性的要求,就是建了一個(gè)字典的 而已。PRIMARYKEY如果表A要?jiǎng)h除一條記錄,那么就等于刪除一個(gè)主鍵,那么如果表B中到了這個(gè)主鍵,就必須先刪除表B中修改表A的主鍵,由于主鍵的唯一性,修改的主鍵相當(dāng)于插入新主鍵,那么表B過(guò)這個(gè)主鍵,將表A的主鍵 tinyint,0表示假,非0 47。無(wú)符號(hào)的范圍是長(zhǎng)整型,8字節(jié),帶符號(hào)的范圍是符號(hào)的范圍是0 07支持的范圍是'1000-01-0100:00:00'到'9999-12-31時(shí)間戳。范圍是'1970-01-0100:00:00'到2037變長(zhǎng)字符串。 選擇(slectio):又稱為限制,是從關(guān)系中選擇出滿足給定條件的元組。投影(pjection):在關(guān)系上投影就是從選擇出若干屬性列組成新的關(guān)系。連接(ji):將不同的兩個(gè)關(guān)系連接成一個(gè)關(guān)系。InsertSETcol_name1=expr1[,col_name2=expr2...][WHEREwhere_de?nition]IGNORE意義同InsertDeleteDELETE[IGNORE]FROMtbl_name[WHEREwhere_de?nition]Selectselect_expr,...[FROMtable_references[WHERE[GROUPBY{col_name|expr|position}[ASC|DESC],...[WITHROLLUP]][HAVING[ORDERBY{col_name|expr|position}[ASC|DESC],...][LIMIT{[offset,]row_count|row_countOFFSEToffset}][FORUPDATE|LOCKINSHAREMODE]]SELECTSELECTSELECT*FROMSELECTemp_no,first_name+last_nameFROMSELECTemp_no,CONCAT(first_name,'',last_name)FROM--AS定義別名,可選。寫ASSELECTemp_noas`no`,CONCAT(first_name,'',last_name)nameFROMemployeesLimit返回5SELECT*FROMemployeesempLIMIT--返回5條記錄,偏移18SELECT*FROMemployeesempLIMIT5OFFSET18;SELECT*FROMemployeesempLIMIT18,5;Where=>、<、>=、在某個(gè)范圍之內(nèi),betweenaandb等價(jià)于[a,與或注意:如果很多表達(dá)式需要使用AND、O計(jì)算邏輯表達(dá)式的值的時(shí)候,由于有結(jié)合律的問(wèn)題,建議使用小括號(hào)來(lái)避免產(chǎn)生錯(cuò)誤----SELECT*FROMemployeesWHEREemp_no<10015andlast_nameLIKESELECT*FROMemployeesWHEREemp_noBETWEEN10010AND10015ANDlast_nameLIKE'P%';SELECT*FROMemployeesWHEREemp_noin(10001,10002,10010);OrderbySELECT*FROMemployeesWHEREemp_noin(10001,10002,10010)ORDERBYemp_no----DISTINCTSELECTDISTINCTdept_nofromdept_emp;SELECTDISTINCTemp_nofromSELECTDISTINCTdept_no,emp_nofromMIN(expr),----SELECTCOUNT(*),AVG(emp_no),SUM(emp_no),MIN(emp_no),MAX(emp_no)FROM使用 ----SELECTemp_no,SUM(salary),AVG(salary),COUNT(emp_no)from--SELECTemp_no,SUM(salary),AVG(salary),COUNT(emp_no)fromsalariesWHEREemp_no<--按照不同emp_noSELECTemp_no,SUM(salary),AVG(salary),COUNT(emp_no)fromsalariesWHEREemp_no<10003GROUPBYemp_no;--HAVINGSELECTemp_no,SUM(salary),AVG(salary),COUNT(emp_no)fromsalariesGROUPBYemp_noHAVINGAVG(salary)>45000;--SELECTemp_no,SUM(salary),AVG(salary)ASsal_avg,COUNT(emp_no)fromsalariesGROUPBYemp_noHAVINGsal_avg>60000;--SELECTSELECTemp_no,SUM(salary),AVG(salary)ASsal_avg,COUNT(emp_no)fromsalariesGROUPBYemp_noHAVINGsal_avg>60000ORDERBYsal_avg;子查詢中不能使用OrderbySELECT*FROMemployeesWHEREemp_noin(SELECTemp_nofromemployeesWHEREemp_no>10015)ORDERBYemp_noDESC;SELECTemp.emp_no,emp.first_name,genderFROM(SELECT*fromemployeesWHEREemp_no>10015)ASempWHEREemp.emp_no<10019ORDERBYemp_noDESC;連接交叉連接cross----工資40SELECT*FROM--20SELECT*FROM---800SELECT*fromemployeesCROSSJOINinnerjoin,省略為join等值連接,只選某些?d相等的元組(行),使用On----乘積800SELECT*fromemployeesJOINSELECT*fromemployeesINNERJOIN--ON等值連接40SELECT*fromemployeesJOINsalariesONemployees.emp_no=自然連接,去掉了重復(fù)列,且自行使用employees.emp_nosalaries.emp_no的條件SELECT*fromemployeesNATURALJOINsalaries;outerjoin,可以省略為SELECT*fromemployeesLEFTJOINsalariesONemployees.emp_no=SELECT*fromemployeesRIGHTJOINsalariesONemployees.emp_no=--SELECT*fromsalariesRIGHTJOINemployeesONemployees.emp_no=selectselectmanager.*fromempmanager,empworkerwheremanaer.empno=worker.mgrandworker.empno=1;selectmanager.*fromempmanagerinnerjoinempworkeronmanaer.empno=worker.mgrwhere事務(wù)性他事務(wù)是的,并發(fā)執(zhí)行的各個(gè)事務(wù)之間不能互相干擾持久性也稱永久性(prmannc),就應(yīng)該是永久性的。接下來(lái)的其他操作或故障不應(yīng)該對(duì)其有任何影響享資源一樣不可預(yù)期,就不能保證一致性。性,就是指多個(gè)事務(wù)共同的數(shù)據(jù)了,應(yīng)該互不干擾。性,指的是究竟在一個(gè)事務(wù)處理期間,其MySQL級(jí)首先看看性不好,帶來(lái)哪些問(wèn)題:更新丟失Lost事務(wù)A和B,事務(wù)B到了事務(wù)A未提交的數(shù)據(jù)(這個(gè)數(shù)據(jù)可能是一個(gè)中間值,也可能事務(wù)A后回事務(wù))。事務(wù)A是否最后提交并不關(guān)心。只要到了這個(gè)被修改的數(shù)據(jù)就是臟讀。不可重復(fù)讀Unrepeatable事務(wù)A在事務(wù)執(zhí)行中相同查詢語(yǔ)句,得到了不同的結(jié)果,不能保證同一條查詢語(yǔ)句重復(fù)讀以重復(fù)讀。幻讀Phantom事務(wù)A中同一個(gè)查詢要進(jìn)行多次,事務(wù)B插入數(shù)據(jù),導(dǎo)致A返回不同的結(jié)果集,如同幻覺(jué),就是幻讀。數(shù)據(jù)集有記錄增加了,可以看做是增加了記錄的不可重復(fù)讀。 READ可以重復(fù)讀,MySQL的默認(rèn)級(jí)別級(jí)別越高,串行化越高,數(shù)據(jù)庫(kù)執(zhí)行效率低;級(jí)別越低,并行度越高,性能越高。---設(shè)置會(huì)話級(jí)或者全 SET[SESSION|GLOBAL]TRANSACTION
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 借資產(chǎn)合同范本
- 2025年度DAF運(yùn)輸合同下的貨物運(yùn)輸保險(xiǎn)責(zé)任劃分
- 使用土地建房合同范例
- 個(gè)人傭金協(xié)議合同范例
- 2024-2030年中國(guó)掃描聲學(xué)顯微鏡(SAM)行業(yè)發(fā)展監(jiān)測(cè)及發(fā)展趨勢(shì)預(yù)測(cè)報(bào)告
- 上門宴席服務(wù)合同范例
- 勞保服合同范本
- 農(nóng)村房屋征收合同范本
- 2025年度教育培訓(xùn)機(jī)構(gòu)經(jīng)營(yíng)權(quán)承包合同范本
- 2025年度節(jié)能減排產(chǎn)品銷售代理合同樣本
- Module 2 Unit 2 I dont like ginger. (說(shuō)課稿)-2024-2025學(xué)年外研版(一起)英語(yǔ)二年級(jí)上冊(cè)
- 2025年新高考語(yǔ)文模擬考試試卷(五) (含答案解析)
- 教育部《中小學(xué)校園食品安全和膳食經(jīng)費(fèi)管理工作指引》專題培訓(xùn)
- 瞻望病人的護(hù)理
- WPS辦公應(yīng)用職業(yè)技能等級(jí)證書(初級(jí))考試復(fù)習(xí)題庫(kù)(含答案)
- 北師大版七年級(jí)數(shù)學(xué)上冊(cè)教材同步課后習(xí)題答案
- 大霧天安全行車培訓(xùn)
- 杭州市2025屆高三教學(xué)質(zhì)量檢測(cè)(一模) 英語(yǔ)試題卷(含答案解析)
- 北師大版七年級(jí)上冊(cè)數(shù)學(xué)思維導(dǎo)圖全套
- 人教版三下勞動(dòng)項(xiàng)目四《蒸蛋羹》教學(xué)設(shè)計(jì)
- 人工智能基礎(chǔ)知識(shí)培訓(xùn)課件
評(píng)論
0/150
提交評(píng)論