《PHP+MySQL動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)》課件 第5章 MySQL基礎(chǔ)(上)_第1頁(yè)
《PHP+MySQL動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)》課件 第5章 MySQL基礎(chǔ)(上)_第2頁(yè)
《PHP+MySQL動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)》課件 第5章 MySQL基礎(chǔ)(上)_第3頁(yè)
《PHP+MySQL動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)》課件 第5章 MySQL基礎(chǔ)(上)_第4頁(yè)
《PHP+MySQL動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)》課件 第5章 MySQL基礎(chǔ)(上)_第5頁(yè)
已閱讀5頁(yè),還剩100頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

第5章MySQL基礎(chǔ)(上)《PHP+MySQL動(dòng)態(tài)網(wǎng)站開(kāi)發(fā)》學(xué)習(xí)目標(biāo)/Target

了解數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),能夠說(shuō)出數(shù)據(jù)庫(kù)和數(shù)據(jù)模型的概念。

熟悉數(shù)據(jù)庫(kù)的分類(lèi),能夠闡述常用的關(guān)系數(shù)據(jù)庫(kù)和非關(guān)系數(shù)據(jù)庫(kù)。

熟悉SQL的概念和語(yǔ)法規(guī)則,能夠闡述SQL的分類(lèi)和語(yǔ)法規(guī)則。

掌握MySQL的安裝與配置方法,能夠獨(dú)立安裝和配置MySQL。學(xué)習(xí)目標(biāo)/Target

掌握數(shù)據(jù)庫(kù)操作,能夠創(chuàng)建、查看、使用、修改和刪除數(shù)據(jù)庫(kù)。

掌握數(shù)據(jù)表操作,能夠創(chuàng)建、查看、修改和刪除數(shù)據(jù)表。

掌握數(shù)據(jù)操作,能夠添加、查詢(xún)、修改和刪除數(shù)據(jù)。章節(jié)概述/Summary在開(kāi)發(fā)網(wǎng)站時(shí),通常需要使用數(shù)據(jù)庫(kù)來(lái)存儲(chǔ)和讀取數(shù)據(jù)。PHP所支持的數(shù)據(jù)庫(kù)較多,在這些數(shù)據(jù)庫(kù)中,MySQL數(shù)據(jù)庫(kù)一直被認(rèn)為是PHP的最佳搭檔之一。本章將對(duì)MySQL數(shù)據(jù)庫(kù)的基礎(chǔ)知識(shí)進(jìn)行詳細(xì)講解。目錄/Contents5.15.25.3數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)MySQL環(huán)境搭建數(shù)據(jù)庫(kù)操作5.4數(shù)據(jù)表操作5.5數(shù)據(jù)操作數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí)5.1

先定一個(gè)小目標(biāo)!了解數(shù)據(jù)庫(kù)的概念,能夠說(shuō)出什么是數(shù)據(jù)庫(kù)。5.1.1數(shù)據(jù)庫(kù)概述數(shù)據(jù)庫(kù)(DataBase,DB)是一個(gè)存在于計(jì)算機(jī)存儲(chǔ)設(shè)備上的數(shù)據(jù)集合,它可以簡(jiǎn)單地理解為一種存儲(chǔ)數(shù)據(jù)的倉(cāng)庫(kù)。數(shù)據(jù)庫(kù)能夠長(zhǎng)期、高效地管理和存儲(chǔ)數(shù)據(jù),其主要目的是存儲(chǔ)(寫(xiě)入)和提供(讀取)數(shù)據(jù)。5.1.1數(shù)據(jù)庫(kù)概述這里所說(shuō)的數(shù)據(jù)不僅包括普通意義上的數(shù)字,還包括文字、圖像、聲音等,也就是說(shuō),凡是在計(jì)算機(jī)中用于描述事物的記錄都可以稱(chēng)為數(shù)據(jù)。5.1.1數(shù)據(jù)庫(kù)概述數(shù)據(jù)庫(kù)系統(tǒng)是指在計(jì)算機(jī)系統(tǒng)中引入數(shù)據(jù)庫(kù)后的系統(tǒng),除了數(shù)據(jù)庫(kù)外,還包括數(shù)據(jù)庫(kù)管理系統(tǒng)、數(shù)據(jù)庫(kù)應(yīng)用程序等。數(shù)據(jù)庫(kù)系統(tǒng):5.1.1數(shù)據(jù)庫(kù)概述數(shù)據(jù)庫(kù)系統(tǒng)的幾個(gè)重要部分:5.1.1數(shù)據(jù)庫(kù)概述010203123數(shù)據(jù)庫(kù)提供了一個(gè)存儲(chǔ)空間用來(lái)存儲(chǔ)各種數(shù)據(jù)。數(shù)據(jù)庫(kù)對(duì)數(shù)據(jù)庫(kù)的建立、維護(hù)、運(yùn)行進(jìn)行管理,還可以對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行定義、組織和存取。數(shù)據(jù)庫(kù)管理系統(tǒng)使用數(shù)據(jù)庫(kù)應(yīng)用程序與數(shù)據(jù)庫(kù)管理系統(tǒng)進(jìn)行通信、訪問(wèn),以及管理數(shù)據(jù)庫(kù)管理系統(tǒng)中存儲(chǔ)的數(shù)據(jù)。數(shù)據(jù)庫(kù)應(yīng)用程序

先定一個(gè)小目標(biāo)!了解數(shù)據(jù)模型,能夠說(shuō)出什么是數(shù)據(jù)模型。5.1.2數(shù)據(jù)模型什么是數(shù)據(jù)模型?5.1.2數(shù)據(jù)模型地圖模型經(jīng)過(guò)簡(jiǎn)化和抽象的空間模型,使用符號(hào)和文字描述地理環(huán)境的某些特征和內(nèi)在聯(lián)系。飛機(jī)模型根據(jù)飛機(jī)的構(gòu)造和布局制作飛機(jī)模型,根據(jù)指定的比例還原飛機(jī)的結(jié)構(gòu)。5.1.2數(shù)據(jù)模型數(shù)據(jù)模型是現(xiàn)實(shí)世界數(shù)據(jù)特征的抽象,用于描述數(shù)據(jù)、組織數(shù)據(jù)和操作數(shù)據(jù)。由于計(jì)算機(jī)不能直接處理現(xiàn)實(shí)世界中客觀存在的具體事物,所以必須事先把具體事物轉(zhuǎn)換為計(jì)算機(jī)能夠處理的數(shù)據(jù)。5.1.2數(shù)據(jù)模型為了把現(xiàn)實(shí)世界中客觀存在的具體事物轉(zhuǎn)換為計(jì)算機(jī)能夠處理的數(shù)據(jù),需要經(jīng)歷現(xiàn)實(shí)世界、信息世界和機(jī)器世界3個(gè)層次。5.1.2數(shù)據(jù)模型客觀存在的具體事物轉(zhuǎn)換為計(jì)算機(jī)能夠處理的數(shù)據(jù)的過(guò)程:5.1.2數(shù)據(jù)模型數(shù)據(jù)模型按照不同的應(yīng)用層次劃分:數(shù)據(jù)模型概念模型邏輯模型物理模型5.1.2數(shù)據(jù)模型1.概念模型概念模型將現(xiàn)實(shí)世界中的客觀對(duì)象抽象成信息世界的數(shù)據(jù)。概念模型也稱(chēng)為信息模型,是現(xiàn)實(shí)世界到機(jī)器世界的中間層。概念模型將現(xiàn)實(shí)世界中的客觀對(duì)象分為實(shí)體、屬性和聯(lián)系:客觀存在并可相互區(qū)別的事物,例如,學(xué)生、班級(jí)、課程等都是實(shí)體。實(shí)體所具有的特性,一個(gè)實(shí)體可以用若干個(gè)屬性來(lái)描述,例如,學(xué)生實(shí)體有學(xué)號(hào)、學(xué)生姓名和學(xué)生性別等屬性。實(shí)體與實(shí)體之間的聯(lián)系,有一對(duì)一(1:1)、一對(duì)多(1:n)、多對(duì)多(m:n)這3種聯(lián)系。實(shí)體屬性聯(lián)系5.1.2數(shù)據(jù)模型概念模型的表示方法有很多,常用的方法是實(shí)體-聯(lián)系方法,該方法使用E-R圖表示概念模型。E-R圖是一種用圖形表示的實(shí)體-聯(lián)系模型。E-R圖的通用表示方式如下:實(shí)體用矩形框表示,將實(shí)體名寫(xiě)在矩形框內(nèi)。屬性用橢圓框表示,將屬性名寫(xiě)在橢圓框內(nèi)。實(shí)體與屬性之間用實(shí)線(xiàn)連接。聯(lián)系用菱形框表示,將聯(lián)系名寫(xiě)在菱形框內(nèi),用實(shí)線(xiàn)將相關(guān)的實(shí)體連接,并在實(shí)線(xiàn)旁標(biāo)注聯(lián)系的類(lèi)型。5.1.2數(shù)據(jù)模型使用E-R圖描述學(xué)生與課程的聯(lián)系:5.1.2數(shù)據(jù)模型2.邏輯模型邏輯模型用于描述數(shù)據(jù)的結(jié)構(gòu)和聯(lián)系,將數(shù)據(jù)從信息世界轉(zhuǎn)換為機(jī)器世界,實(shí)現(xiàn)設(shè)計(jì)和組織數(shù)據(jù)。邏輯模型的分類(lèi):層次模型是基于層次的數(shù)據(jù)結(jié)構(gòu),使用樹(shù)形結(jié)構(gòu)來(lái)表示數(shù)據(jù)之間的聯(lián)系。網(wǎng)狀模型是基于網(wǎng)狀的數(shù)據(jù)結(jié)構(gòu),使用網(wǎng)狀結(jié)構(gòu)來(lái)表示數(shù)據(jù)之間的聯(lián)系。面向?qū)ο竽P褪褂妹嫦驅(qū)ο蟮乃季S方式與方法來(lái)描述客觀實(shí)體(對(duì)象),是現(xiàn)在較為流行的數(shù)據(jù)模型。關(guān)系模型使用數(shù)據(jù)表的形式組織數(shù)據(jù),是目前廣泛使用的邏輯模型之一。5.1.2數(shù)據(jù)模型3.物理模型物理模型用于描述數(shù)據(jù)是如何進(jìn)行實(shí)際存儲(chǔ)的。物理模型是一種面向計(jì)算機(jī)系統(tǒng)的模型,它是對(duì)數(shù)據(jù)最底層的抽象,用于描述數(shù)據(jù)在系統(tǒng)內(nèi)部的表示方式和存取方法。例如,描述數(shù)據(jù)在磁盤(pán)上的表示方式和存取方法。5.1.2數(shù)據(jù)模型

先定一個(gè)小目標(biāo)!熟悉常見(jiàn)的關(guān)系數(shù)據(jù)庫(kù),能夠說(shuō)出常用的關(guān)系數(shù)據(jù)庫(kù)。5.1.3關(guān)系數(shù)據(jù)庫(kù)可移植性好、使用方便、功能強(qiáng),但是價(jià)格高廣泛應(yīng)用于電子商務(wù)、銀行、保險(xiǎn)、電力等行業(yè),易操作、界面良好支持多用戶(hù)、多線(xiàn)程,具有跨平臺(tái)的特性,使用更加方便、快捷5.1.3關(guān)系數(shù)據(jù)庫(kù)

先定一個(gè)小目標(biāo)!熟悉常見(jiàn)的非關(guān)系數(shù)據(jù)庫(kù),能夠說(shuō)出常用的非關(guān)系數(shù)據(jù)庫(kù)。5.1.4非關(guān)系數(shù)據(jù)庫(kù)查詢(xún)速度快,用于處理大量數(shù)據(jù)的高負(fù)載訪問(wèn)采用BSON格式存儲(chǔ)數(shù)據(jù),高性能、易部署、易使用、存儲(chǔ)數(shù)據(jù)方便5.1.4非關(guān)系數(shù)據(jù)庫(kù)

先定一個(gè)小目標(biāo)!熟悉SQL簡(jiǎn)介,能夠說(shuō)出SQL的常用功能和SQL的語(yǔ)法規(guī)則。5.1.5SQL簡(jiǎn)介SQL(StructureQueryLanguage,結(jié)構(gòu)查詢(xún)語(yǔ)言)是一種數(shù)據(jù)庫(kù)查詢(xún)語(yǔ)言,主要用于管理數(shù)據(jù)庫(kù)中的數(shù)據(jù),如存取數(shù)據(jù)、查詢(xún)數(shù)據(jù)、更新數(shù)據(jù)等。5.1.5SQL簡(jiǎn)介根據(jù)SQL的功能,將SQL劃分為4類(lèi):5.1.5SQL簡(jiǎn)介數(shù)據(jù)定義語(yǔ)言(DataDefinitionLanguage,DDL)定義數(shù)據(jù)表結(jié)構(gòu),主要包括CREATE語(yǔ)句、ALTER語(yǔ)句和DROP語(yǔ)句。數(shù)據(jù)操縱語(yǔ)言(DataManipulationLanguage,DML)對(duì)數(shù)據(jù)庫(kù)中的數(shù)據(jù)進(jìn)行添加、修改和刪除操作,主要包括INSERT語(yǔ)句、UPDATE語(yǔ)句和DELETE語(yǔ)句。數(shù)據(jù)控制語(yǔ)言(DataControlLanguage,DCL)控制用戶(hù)的訪問(wèn)權(quán)限,主要包括GRANT語(yǔ)句、COMMIT語(yǔ)句和ROLLBACK語(yǔ)句。數(shù)據(jù)查詢(xún)語(yǔ)言(DataQueryLanguage,DQL)用于查詢(xún)數(shù)據(jù),主要是SELECT語(yǔ)句。SELECT語(yǔ)句用于查詢(xún)數(shù)據(jù)庫(kù)中的一條數(shù)據(jù)或多條數(shù)據(jù)。

先定一個(gè)小目標(biāo)!熟悉SQL語(yǔ)法規(guī)則,能夠說(shuō)出SQL的構(gòu)成和使用SQL的注意事項(xiàng)。5.1.6SQL語(yǔ)法規(guī)則通常情況下,一條SQL語(yǔ)句由一個(gè)或多個(gè)子句構(gòu)成,SQL語(yǔ)句示例:SELECT*FROM數(shù)據(jù)表名稱(chēng);關(guān)鍵字關(guān)鍵字所有的字段用戶(hù)自定義的數(shù)據(jù)表的名稱(chēng)5.1.6SQL語(yǔ)法規(guī)則編寫(xiě)SQL語(yǔ)句的注意事項(xiàng):(1)換行、縮進(jìn)與結(jié)尾分隔符SQL語(yǔ)句可以單行或多行書(shū)寫(xiě),多行書(shū)寫(xiě)時(shí)按“Enter”鍵換行,每行中的SQL語(yǔ)句可以使用空格和縮進(jìn)增強(qiáng)語(yǔ)句的可讀性。在SQL語(yǔ)句的結(jié)束位置,通常情況下使用分號(hào)結(jié)尾。(2)大小寫(xiě)問(wèn)題MySQL的關(guān)鍵字在使用時(shí)不區(qū)分大小寫(xiě),習(xí)慣上使用大寫(xiě)形式。Windows系統(tǒng)下,數(shù)據(jù)庫(kù)名稱(chēng)、數(shù)據(jù)表名稱(chēng)、字段名稱(chēng)不區(qū)分大小寫(xiě);Linux系統(tǒng)下,數(shù)據(jù)庫(kù)名稱(chēng)和數(shù)據(jù)表名稱(chēng)嚴(yán)格區(qū)分大小寫(xiě),字段名不區(qū)分大小寫(xiě)。(3)反引號(hào)的使用關(guān)鍵字不能作為用戶(hù)自定義的名稱(chēng)使用,如果一定要使用關(guān)鍵字作為用戶(hù)自定義的名稱(chēng),可以通過(guò)反引號(hào)“`”將用戶(hù)自定義的名稱(chēng)包裹起來(lái)。5.1.6SQL語(yǔ)法規(guī)則SQL語(yǔ)法中的特殊符號(hào):使用“[]”進(jìn)行標(biāo)識(shí)的內(nèi)容表示可選項(xiàng),例如“[DEFAULT]”表示DEFAULT可寫(xiě)可不寫(xiě)?!癧,...]”表示其前面的內(nèi)容可以有多個(gè),例如“[字段名數(shù)據(jù)類(lèi)型][,...]”表示可以有多個(gè)“[字段名數(shù)據(jù)類(lèi)型]”?!皗}”表示必選項(xiàng)?!皘”表示分隔符兩側(cè)的內(nèi)容為“或”的關(guān)系。在“{}”中使用“|”表示選擇項(xiàng),在選擇項(xiàng)中僅需選擇其中一項(xiàng),例如{A|B|C}表示從A、B、C中任選其一。5.1.6SQL語(yǔ)法規(guī)則MySQL環(huán)境搭建5.2

先定一個(gè)小目標(biāo)!掌握獲取MySQL的方法,能夠根據(jù)需求獲取MySQL的安裝包。5.2.1獲取MySQLMySQL提供了企業(yè)版、高級(jí)集群版和社區(qū)版。其中,企業(yè)版和高級(jí)集群版都是收費(fèi)的商業(yè)版本,而社區(qū)版是通過(guò)GPL協(xié)議授權(quán)的開(kāi)源軟件,可以免費(fèi)使用。下面以社區(qū)版的MySQL8.0.27版本為例,講解如何獲取社區(qū)版的MySQL8.0.27安裝包。5.2.1獲取MySQLMySQL社區(qū)版服務(wù)器的下載頁(yè)面。在MySQL官方網(wǎng)站找到MySQL8.0.27社區(qū)版壓縮包的下載地址:STEP01進(jìn)入文件下載頁(yè)面5.2.1獲取MySQLMySQL社區(qū)版文件下載頁(yè)面。下載MySQL社區(qū)版。STEP02下載MySQL安裝包5.2.1獲取MySQL

先定一個(gè)小目標(biāo)!掌握安裝MySQL的方法,能夠獨(dú)立安裝MySQL。5.2.2安裝MySQL1將下載的壓縮文件解壓到C:\web\mysql8.0目錄,MySQL安裝目錄如下:bin目錄:放置一些可執(zhí)行文件。docs目錄:放置文檔。include目錄:放置一些頭文件。lib目錄:放置一系列的庫(kù)文件。share目錄:存放字符集、語(yǔ)言等信息。LICENSE文件:介紹MySQL的授權(quán)信息。README文件:介紹MySQL的版權(quán)、相關(guān)文檔地址和下載地址等信息。5.2.2安裝MySQL找到命令提示符,選擇“以管理員身份運(yùn)行”。在命令提示符窗口中切換到MySQL安裝目錄下的bin目錄。3安裝MySQL服務(wù),服務(wù)名稱(chēng)為MySQL80。42mysqld-installMySQL805.2.2安裝MySQLMySQL安裝成功后,如需卸載,卸載命令如下:mysqld-removeMySQL805.2.2安裝MySQL

先定一個(gè)小目標(biāo)!5.2.3配置和啟動(dòng)MySQL掌握配置和啟動(dòng)MySQL的方法,能夠完成MySQL的配置和啟動(dòng)。1.創(chuàng)建MySQL配置文件在C:\web\mysql8.0目錄下創(chuàng)建配置文件my.ini,添加配置:[mysqld]basedir=C:/web/mysql8.0datadir=C:/web/mysql8.0/dataport=3306basedir:MySQL的安裝目錄datadir:MySQL數(shù)據(jù)庫(kù)文件的保存目錄port:MySQL客戶(hù)端的端口號(hào),默認(rèn)33065.2.3配置和啟動(dòng)MySQL2.初始化MySQL初始化數(shù)據(jù)庫(kù),自動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)文件保存目錄。初始化MySQL的具體命令如下:mysqld--initialize-insecure--initialize表示初始化數(shù)據(jù)庫(kù)-insecure表示忽略安全性,將root用戶(hù)的登錄密碼設(shè)置為空如果省略-insecure,將為root生成一個(gè)隨機(jī)的復(fù)雜密碼5.2.3配置和啟動(dòng)MySQL3.啟動(dòng)MySQL服務(wù)啟動(dòng)MySQL服務(wù)的命令如下:netstartMySQL80netstart是Windows系統(tǒng)中用于啟動(dòng)服務(wù)的命令,MySQL80是要啟動(dòng)的服務(wù)名稱(chēng)5.2.3配置和啟動(dòng)MySQL停止MySQL80服務(wù)的命令如下:netstopMySQL805.2.3配置和啟動(dòng)MySQLnetstop是Windows系統(tǒng)中用于停止服務(wù)的命令,MySQL80是要停止的服務(wù)名稱(chēng)。

先定一個(gè)小目標(biāo)!5.2.4用戶(hù)登錄與設(shè)置密碼掌握登錄和設(shè)置密碼的方法,能夠通過(guò)指定用戶(hù)登錄和設(shè)置用戶(hù)的登錄密碼。以管理員身份運(yùn)行命令提示符,在命令提示符窗口中切換到MySQL安裝目錄下的bin目錄:cdC:\web\mysql8.0\bin步驟一:5.2.4用戶(hù)登錄與設(shè)置密碼步驟二:登錄MySQL的命令:mysql-urootmysql表示運(yùn)行當(dāng)前目錄(C:\web\mysql8.0\bin)下的mysql.exe,-uroot表示以root用戶(hù)的身份登錄,-u和root之間的空格可以省略。5.2.4用戶(hù)登錄與設(shè)置密碼步驟三:為了保護(hù)數(shù)據(jù)庫(kù)的安全,需要為root用戶(hù)設(shè)置密碼:ALTERUSER'root'@'localhost'IDENTIFIEDBY'123456';步驟四:設(shè)置密碼后,執(zhí)行exit命令退出MySQL。在重新登錄MySQL時(shí),使用新密碼:mysql-uroot-p123456如果在登錄時(shí)不希望密碼被直接看到,可以省略-p后面的密碼,按下“Enter”鍵后,根據(jù)提示輸入密碼。5.2.4用戶(hù)登錄與設(shè)置密碼數(shù)據(jù)庫(kù)操作5.3

先定一個(gè)小目標(biāo)!掌握創(chuàng)建數(shù)據(jù)庫(kù)的語(yǔ)法,能夠根據(jù)需求創(chuàng)建數(shù)據(jù)庫(kù)。5.3.1創(chuàng)建數(shù)據(jù)庫(kù)創(chuàng)建數(shù)據(jù)庫(kù)是指在數(shù)據(jù)庫(kù)管理系統(tǒng)中劃分一塊存儲(chǔ)數(shù)據(jù)的空間。CREATEDATABASE語(yǔ)句用于創(chuàng)建數(shù)據(jù)庫(kù),其語(yǔ)法格式如下:CREATEDATABASE數(shù)據(jù)庫(kù)名稱(chēng)[庫(kù)選項(xiàng)];CREATEDATABASE:表示創(chuàng)建數(shù)據(jù)庫(kù)。數(shù)據(jù)庫(kù)名稱(chēng)包括字母、數(shù)字和下劃線(xiàn)。庫(kù)選項(xiàng)用于設(shè)置創(chuàng)建的數(shù)據(jù)庫(kù)的相關(guān)特性,如字符集、校對(duì)集等。5.3.1創(chuàng)建數(shù)據(jù)庫(kù)下面演示如何創(chuàng)建一個(gè)名稱(chēng)為mydb的數(shù)據(jù)庫(kù):mysql>CREATEDATABASEmydb;QueryOK,1rowaffected(0.02sec)表示SQL語(yǔ)句執(zhí)行成功執(zhí)行SQL語(yǔ)句所花費(fèi)的時(shí)間受影響行數(shù)5.3.1創(chuàng)建數(shù)據(jù)庫(kù)

先定一個(gè)小目標(biāo)!掌握查看數(shù)據(jù)庫(kù)的語(yǔ)法,能夠查看已創(chuàng)建的數(shù)據(jù)庫(kù)的相關(guān)信息。5.3.2查看數(shù)據(jù)庫(kù)查看數(shù)據(jù)庫(kù)的兩種方式:查看數(shù)據(jù)庫(kù)查看所有數(shù)據(jù)庫(kù)查看指定數(shù)據(jù)庫(kù)的創(chuàng)建信息5.3.2查看數(shù)據(jù)庫(kù)1.查看所有數(shù)據(jù)庫(kù)查看MySQL中所有數(shù)據(jù)庫(kù)的語(yǔ)法格式:SHOW

DATABASES;5.3.2查看數(shù)據(jù)庫(kù)查看MySQL中所有的數(shù)據(jù)庫(kù):mysql>SHOWDATABASES;+------------------------+|Database

|+------------------------+|information_schema||mydb

||mysql||performance_schema||sys |+------------------------+5rowsinset(0.03sec)自動(dòng)創(chuàng)建存儲(chǔ)MySQL自身需要使用的控制和管理信息。存儲(chǔ)系統(tǒng)性能相關(guān)的動(dòng)態(tài)參數(shù)。存儲(chǔ)performance_schema數(shù)據(jù)庫(kù)的視圖,幫助數(shù)據(jù)庫(kù)管理人員監(jiān)控和分析MySQL服務(wù)器的性能。5.3.2查看數(shù)據(jù)庫(kù)存儲(chǔ)數(shù)據(jù)庫(kù)和數(shù)據(jù)表的結(jié)構(gòu)信息。2.查看指定數(shù)據(jù)庫(kù)的創(chuàng)建信息查看指定數(shù)據(jù)庫(kù)的創(chuàng)建信息的語(yǔ)法格式:SHOW

CREATE

DATABASE

數(shù)據(jù)庫(kù)名稱(chēng);查看mydb數(shù)據(jù)庫(kù)的創(chuàng)建信息:mysql>SHOWCREATEDATABASEmydb;+----------+-------------------------------------------------+|Database|CreateDatabase

|+----------+-------------------------------------------------+|mydb|CREATEDATABASE`mydb`|||/*!40100DEFAULTCHARACTERSETutf8mb4||

|COLLATEutf8mb4_0900_ai_ci*/

||

|/*!80016DEFAULTENCRYPTION='N'*/

|+----------+-------------------------------------------------+40100表示的版本為4.1.080016表示的版本為8.0.165.3.2查看數(shù)據(jù)庫(kù)

先定一個(gè)小目標(biāo)!5.3.3使用數(shù)據(jù)庫(kù)掌握使用數(shù)據(jù)庫(kù)的語(yǔ)法,能夠使用指定的數(shù)據(jù)庫(kù)。使用USE語(yǔ)句選擇要使用的數(shù)據(jù)庫(kù)的語(yǔ)法格式:USE數(shù)據(jù)庫(kù)名稱(chēng);使用USE語(yǔ)句選擇mydb數(shù)據(jù)庫(kù):mysql>USEmydb;Databasechanged查看當(dāng)前選擇的數(shù)據(jù)庫(kù):mysql>SELECTDATABASE();+-------------+|DATABASE()|+-------------+|mydb|+-------------+1rowinset(0.00sec)5.3.3使用數(shù)據(jù)庫(kù)

先定一個(gè)小目標(biāo)!5.3.4修改數(shù)據(jù)庫(kù)掌握修改數(shù)據(jù)庫(kù)的語(yǔ)法,能夠修改數(shù)據(jù)庫(kù)的指定選項(xiàng)。使用ALTERDATABASE語(yǔ)句修改數(shù)據(jù)庫(kù)的語(yǔ)法格式:ALTERDATABASE數(shù)據(jù)庫(kù)名稱(chēng){[DEFAULT]CHARACTERSET[=]字符集|[DEFAULT]COLLATE[=]校對(duì)集};CHARACTERSET用于指定字符集。COLLATE用于指定校對(duì)集。5.3.4修改數(shù)據(jù)庫(kù)創(chuàng)建dms數(shù)據(jù)庫(kù),字符集設(shè)置為gbk:CREATEDATABASEdmsCHARACTERSETgbk;將dms數(shù)據(jù)庫(kù)的字符集修改為utf8mb4:ALTERDATABASEdmsCHARACTERSETutf8mb4;查看dms數(shù)據(jù)庫(kù)的創(chuàng)建信息,確認(rèn)字符集是否修改成功:SHOWCREATEDATABASEdms;+----------+------------------------------------------------------------+|Database|CreateDatabase

|+----------+-----------------------------------------------------------+|dms|CREATEDATABASE`dms`

||

|/*!40100DEFAULTCHARACTERSETutf8mb4COLLATE|||utf8mb4_0900_ai_ci*/(省略部分查詢(xún)結(jié)果)

|+----------+------------------------------------------------------------+5.3.4修改數(shù)據(jù)庫(kù)

先定一個(gè)小目標(biāo)!5.3.5刪除數(shù)據(jù)庫(kù)掌握刪除數(shù)據(jù)庫(kù)的語(yǔ)法,能夠刪除指定的數(shù)據(jù)庫(kù)。刪除數(shù)據(jù)庫(kù)的語(yǔ)法:DROP

DATABASE數(shù)據(jù)庫(kù)名稱(chēng);刪除名稱(chēng)為dms的數(shù)據(jù)庫(kù):mysql>DROPDATABASEdms;5.3.5刪除數(shù)據(jù)庫(kù)數(shù)據(jù)表操作5.4

先定一個(gè)小目標(biāo)!掌握創(chuàng)建數(shù)據(jù)表的語(yǔ)法,能夠根據(jù)需求創(chuàng)建數(shù)據(jù)表。5.4.1創(chuàng)建數(shù)據(jù)表使用CREATETABLE語(yǔ)句創(chuàng)建數(shù)據(jù)表的語(yǔ)法:CREATE[TEMPORARY]TABLE[IFNOTEXISTS]數(shù)據(jù)表名稱(chēng)(

字段名數(shù)據(jù)類(lèi)型[字段屬性]...)[表選項(xiàng)];5.4.1創(chuàng)建數(shù)據(jù)表創(chuàng)建數(shù)據(jù)表語(yǔ)法的說(shuō)明:TEMPORARY:可選項(xiàng),表示臨時(shí)表,臨時(shí)表僅在當(dāng)前會(huì)話(huà)可見(jiàn),會(huì)話(huà)結(jié)束時(shí)自動(dòng)刪除。IFNOTEXISTS:可選項(xiàng),表示只有在數(shù)據(jù)表名稱(chēng)不存在時(shí),才會(huì)創(chuàng)建數(shù)據(jù)表。數(shù)據(jù)表名稱(chēng):要?jiǎng)?chuàng)建的數(shù)據(jù)表的名稱(chēng);如果在數(shù)據(jù)表名稱(chēng)前指定“數(shù)據(jù)庫(kù)名稱(chēng).”,表示在指定的數(shù)據(jù)庫(kù)中創(chuàng)建數(shù)據(jù)表。字段名:字段的名稱(chēng)。數(shù)據(jù)類(lèi)型:字段的數(shù)據(jù)類(lèi)型,用于確定MySQL存儲(chǔ)數(shù)據(jù)的方式。常見(jiàn)的數(shù)據(jù)類(lèi)型有整數(shù)類(lèi)型(如INT)、字符串類(lèi)型(如VARCHAR)等。字段屬性:可選項(xiàng),用于為字段添加屬性,每個(gè)屬性有不同的功能。常用的屬性有COMMENT屬性和約束屬性。表選項(xiàng):可選項(xiàng),用于設(shè)置數(shù)據(jù)表的相關(guān)選項(xiàng),例如字符集、校對(duì)集等。5.4.1創(chuàng)建數(shù)據(jù)表創(chuàng)建goods數(shù)據(jù)表,數(shù)據(jù)表中包含4個(gè)字段,其中,id和price字段的數(shù)據(jù)類(lèi)型為INT,name和description字段的數(shù)據(jù)類(lèi)型為VARCHAR:CREATETABLEgoods(

id

INTCOMMENT'編號(hào)',

name

VARCHAR(32)COMMENT'商品名稱(chēng)',

price

INTCOMMENT'價(jià)格',

description

VARCHAR(255)COMMENT'商品描述');5.4.1創(chuàng)建數(shù)據(jù)表

先定一個(gè)小目標(biāo)!掌握查看數(shù)據(jù)表的方法,能夠查看指定的數(shù)據(jù)表。5.4.2查看數(shù)據(jù)表1.查看數(shù)據(jù)庫(kù)中存在的所有數(shù)據(jù)表通過(guò)SHOWTABLES語(yǔ)句可以查看數(shù)據(jù)庫(kù)中存在的所有數(shù)據(jù)表,語(yǔ)法:SHOWTABLES[LIKE匹配模式];匹配模式:%:表示匹配一個(gè)或多個(gè)字符,代表任意長(zhǎng)度的字符串,長(zhǎng)度可以為0。_:表示僅匹配一個(gè)字符。5.4.2查看數(shù)據(jù)表在mydb數(shù)據(jù)庫(kù)中創(chuàng)建new_goods數(shù)據(jù)表,查看mydb數(shù)據(jù)庫(kù)中的所有數(shù)據(jù)表和數(shù)據(jù)庫(kù)名稱(chēng)含有new的數(shù)據(jù)表:mysql>SHOWTABLES;+------------------+|Tables_in_mydb|+------------------+|goods||new_goods|+------------------+mysql>SHOWTABLESLIKE'%new%';+----------------------------+|Tables_in_mydb(%new%)|+----------------------------+|new_goods|+----------------------------+5.4.2查看數(shù)據(jù)表2.查看數(shù)據(jù)表的創(chuàng)建信息通過(guò)SHOWCREATETABLE語(yǔ)句查看數(shù)據(jù)表創(chuàng)建信息,如數(shù)據(jù)表名稱(chēng)、創(chuàng)建時(shí)間等。查看數(shù)據(jù)表創(chuàng)建信息的語(yǔ)法:SHOWCREATETABLE數(shù)據(jù)表名稱(chēng);查看new_goods數(shù)據(jù)表的創(chuàng)建信息:SHOWCREATETABLEnew_goods\G******************************1.row************************************

Table:new_goodsCreateTable:CREATETABLE`new_goods`(`id`intDEFAULTNULLCOMMENT'編號(hào)',`name`varchar(32)DEFAULTNULLCOMMENT'商品名稱(chēng)')ENGINE=InnoDBDEFAULTCHARSET=utf8mb4COLLATE=utf8mb4_0900_ai_ci5.4.2查看數(shù)據(jù)表3.查看數(shù)據(jù)表的結(jié)構(gòu)DESCRIBE語(yǔ)句可以用于查看數(shù)據(jù)表中所有字段或指定字段的信息,包括字段名、數(shù)據(jù)類(lèi)型等。DESCRIBE還可以簡(jiǎn)寫(xiě)成DESC。使用DESC語(yǔ)句查看所有字段信息的語(yǔ)法格式:DESC數(shù)據(jù)表名稱(chēng);使用DESC語(yǔ)句查看指定字段信息的語(yǔ)法格式:DESC數(shù)據(jù)表名稱(chēng)字段名;5.4.2查看數(shù)據(jù)表DESC語(yǔ)句執(zhí)行成功后,返回的字段信息如下:Field:表示數(shù)據(jù)表中字段的名稱(chēng)。Type:表示數(shù)據(jù)表中字段對(duì)應(yīng)的數(shù)據(jù)類(lèi)型。Null:表示該字段是否可以存儲(chǔ)NULL值。Key:表示該字段是否已經(jīng)建立索引。Default:表示該字段是否有默認(rèn)值,如果有默認(rèn)值則顯示對(duì)應(yīng)的默認(rèn)值。Extra:表示與字段相關(guān)的附加信息。5.4.2查看數(shù)據(jù)表查看new_goods數(shù)據(jù)表的所有字段和name字段的信息:mysql>DESCnew_goods;+-------------+--------------+------+-----+---------+-------+|Field

|Type

|Null|Key|Default|Extra|+-------------+--------------+------+-----+---------+-------+|id

|int

|YES

|

|NULL

|

||name

|varchar(32)

|YES||NULL

|

|+-------------+--------------+------+-----+---------+-------+mysql>DESCnew_goodsname;+-------+--------------+------+-----+---------+-------+|Field|Type

|Null|Key|Default|Extra|+-------+--------------+------+-----+---------+-------+|name|varchar(32)

|YES||NULL

|

|+-------+--------------+------+-----+---------+-------+5.4.2查看數(shù)據(jù)表

先定一個(gè)小目標(biāo)!掌握修改數(shù)據(jù)表的方法,能夠修改數(shù)據(jù)表。5.4.3修改數(shù)據(jù)表1.修改數(shù)據(jù)表的名稱(chēng)修改數(shù)據(jù)表名稱(chēng)的2個(gè)方式:語(yǔ)法格式1ALTERTABLE舊數(shù)據(jù)表名稱(chēng)RENAME[TO|AS]新數(shù)據(jù)表名稱(chēng);語(yǔ)法格式2RENAMETABLE舊數(shù)據(jù)表名稱(chēng)1TO新數(shù)據(jù)表名稱(chēng)1[,舊數(shù)據(jù)表名稱(chēng)2TO新數(shù)據(jù)表名稱(chēng)2]…;5.4.3修改數(shù)據(jù)表將數(shù)據(jù)表new_goods的名稱(chēng)修改為my_goods:mysql>RENAMETABLEnew_goodsTOmy_goods;5.4.3修改數(shù)據(jù)表2.修改表選項(xiàng)通過(guò)ALTERTABLE語(yǔ)句修改表選項(xiàng)的語(yǔ)法格式:ALTERTABLE數(shù)據(jù)表名稱(chēng)表選項(xiàng)[=]值;修改my_goods數(shù)據(jù)表的字符集:mysql>ALTERTABLEmy_goodsCHARSET=gbk;5.4.3修改數(shù)據(jù)表3.新增字段通過(guò)ALTERTABLE語(yǔ)句的ADD子句實(shí)現(xiàn)新增字段:#語(yǔ)法格式1:新增一個(gè)字段,并指定其位置ALTERTABLE數(shù)據(jù)表名稱(chēng)ADD[COLUMN]新字段名數(shù)據(jù)類(lèi)型[FIRST|AFTER字段名]#語(yǔ)法格式2:同時(shí)新增多個(gè)字段ALTERTABLE數(shù)據(jù)表名稱(chēng)ADD[COLUMN](新字段名1數(shù)據(jù)類(lèi)型1;[新字段名2數(shù)據(jù)類(lèi)型2;]…)在數(shù)據(jù)表my_goods中字段name后新增一個(gè)num字段:ALTERTABLEmy_goodsADDnumINTAFTER

name;5.4.3修改數(shù)據(jù)表4.修改字段信息修改字段信息通常是指修改字段名、數(shù)據(jù)類(lèi)型、字段屬性和字段位置。通過(guò)ALTERTABLE語(yǔ)句的MODIFY子句或CHANGE子句可以修改數(shù)據(jù)類(lèi)型、字段屬性和字段位置,其中,通過(guò)CHANGE子句還可以修改字段名。使用ALTERTABLE語(yǔ)句的MODIFY子句和CHANGE子句修改字段信息的語(yǔ)法格式:#語(yǔ)法格式1ALTERTABLE數(shù)據(jù)表名稱(chēng)MODIFY[COLUMN]字段名數(shù)據(jù)類(lèi)型[字段屬性][FIRST|AFTER字段名];#語(yǔ)法格式2ALTERTABLE數(shù)據(jù)表名稱(chēng)CHANGE[COLUMN]舊字段名新字段名數(shù)據(jù)類(lèi)型[字段屬性][FIRST|AFTER字段名];5.4.3修改數(shù)據(jù)表將數(shù)據(jù)表my_goods中的num字段移動(dòng)到字段id后面:mysql>ALTERTABLEmy_goodsMODIFYnumintAFTERid;將數(shù)據(jù)表my_goods中的name字段的數(shù)據(jù)類(lèi)型修改為CHAR(12):mysql>ALTERTABLEmy_goodsMODIFYnameCHAR(12);將數(shù)據(jù)表my_goods中的num字段的名稱(chēng)修改為number:mysql>ALTERTABLEmy_goodsCHANGEnumnumberint;5.4.3修改數(shù)據(jù)表5.刪除字段使用ALTERTABLE語(yǔ)句的DROP子句刪除字段的語(yǔ)法:ALTERTABLE數(shù)據(jù)表名稱(chēng)DROP[COLUMN]字段名;刪除my_goods中number字段:ALTERTABLEmy_goodsDROPnumber;5.4.3修改數(shù)據(jù)表

先定一個(gè)小目標(biāo)!掌握刪除數(shù)據(jù)表的語(yǔ)法,能夠刪除數(shù)據(jù)表。5.4.4刪除數(shù)據(jù)表使用DROPTABLE語(yǔ)句刪除數(shù)據(jù)表的語(yǔ)法:DROP[TEMPORARY]TABLE[IFEXISTS]數(shù)據(jù)表名稱(chēng)1[,數(shù)據(jù)表名稱(chēng)2]...;使用DROPTABLE語(yǔ)句刪除my_goods數(shù)據(jù)表:mysql>DROPTABLEIFEXISTSmy_goods;QueryOK,0rowsaffected(0.02sec)IFEXISTS是可選項(xiàng),表示在刪除前判斷數(shù)據(jù)表是否存在。5.4.4刪除數(shù)據(jù)表多學(xué)一招:MySQL中的注釋MySQL中的注釋MySQL支持單行注釋和多行注釋?zhuān)⑨層糜趯?duì)SQL語(yǔ)句進(jìn)行解釋說(shuō)明,并且注釋內(nèi)容會(huì)被MySQL忽略。單行注釋以--或#開(kāi)始,到行末結(jié)束。單行注釋的使用示例:SELECT*FROMstudent;--單行注釋SELECT*FROMstudent;#單行注釋--后面需要加空格多行注釋以/*開(kāi)始,以*/結(jié)束,多行注釋的使用示例:/*

多行注釋*/SELECT*FROMstudent;數(shù)據(jù)操作5.5

先定一個(gè)小目標(biāo)!掌握添加數(shù)據(jù)的語(yǔ)法,能夠給數(shù)據(jù)表添加數(shù)據(jù)。5.5.1添加數(shù)據(jù)數(shù)據(jù)表創(chuàng)建好之后,可以向數(shù)據(jù)表中添加數(shù)據(jù)。要添加數(shù)據(jù)可使用INSERT語(yǔ)句。添加數(shù)據(jù)時(shí)可以為所有字段添加數(shù)據(jù),也可以為部分字段添加數(shù)據(jù)。5.5.1添加數(shù)據(jù)1.為所有字段添加數(shù)據(jù)為數(shù)據(jù)表所有字段添加數(shù)據(jù)時(shí)可以省略字段名,基本語(yǔ)法格式如下:INSERT[INTO]數(shù)據(jù)表名稱(chēng){VALUES|VALUE}(值1[,值2]…);關(guān)鍵字INTO是

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論