版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
模塊2創(chuàng)建與操作MySQL數(shù)據(jù)庫課程名稱MySQL數(shù)據(jù)庫應(yīng)用、設(shè)計與管理任務(wù)驅(qū)動教程章名創(chuàng)建與操作MySQL數(shù)據(jù)庫教學(xué)內(nèi)容創(chuàng)建與操作MySQL數(shù)據(jù)庫課時4項目性質(zhì)□演性 驗性 □計性 √合性授課班級授課日期授課地點教學(xué)目標掌握創(chuàng)建數(shù)據(jù)庫的方法掌握選擇與查看數(shù)據(jù)庫的方法掌握修改數(shù)據(jù)庫的方法掌握刪除數(shù)據(jù)庫的方法了解MySQL數(shù)據(jù)庫存儲引擎教學(xué)內(nèi)容創(chuàng)建數(shù)據(jù)庫選擇與查看數(shù)據(jù)庫修改數(shù)據(jù)庫刪除數(shù)據(jù)庫MySQL數(shù)據(jù)庫存儲引擎教學(xué)重點MySQL數(shù)據(jù)庫基本操作教學(xué)難點MySQL數(shù)據(jù)庫基本操作教學(xué)準備裝有MySQL、NavicatforMySQL等軟件的計算機教學(xué)課件PPT教材:《MySQL數(shù)據(jù)庫應(yīng)用、設(shè)計與管理任務(wù)驅(qū)動教程(微課版)》作業(yè)設(shè)計教學(xué)過程教學(xué)環(huán)節(jié)教學(xué)內(nèi)容與過程(教學(xué)內(nèi)容、教學(xué)方法、組織形式、教學(xué)手段)課前組織做好上課前的各項準備工作(打開計算機、打開課件、打開軟件、打開授課計劃、教案等),吸引學(xué)生注意力。課程說明【課前說明】分別從數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫應(yīng)用程序、數(shù)據(jù)庫用戶、數(shù)據(jù)庫系統(tǒng)等數(shù)據(jù)庫技術(shù)基本概念進行初步的了解?!灸康摹渴箤W(xué)生從了解本節(jié)課的學(xué)習(xí)目標、學(xué)習(xí)重點、考評方式等方面明確課程學(xué)習(xí)的要求和目標。課程內(nèi)容描述2.1創(chuàng)建數(shù)據(jù)庫2.1.1認知數(shù)據(jù)庫技術(shù)中的基本概念1.?dāng)?shù)據(jù)數(shù)據(jù)(Data)是描述客觀事物的符號,可以是文字、數(shù)字、圖形、圖像等,經(jīng)過數(shù)字化后存入計算機。數(shù)據(jù)是數(shù)據(jù)庫中存儲的基本對象。2.?dāng)?shù)據(jù)庫數(shù)據(jù)庫(Database,DB)就是一個有結(jié)構(gòu)的、集成的、可共享的、統(tǒng)一管理的數(shù)據(jù)集合。數(shù)據(jù)庫是一個有結(jié)構(gòu)的數(shù)據(jù)集合,也就是說,數(shù)據(jù)是按一定的數(shù)據(jù)模型來組織的,數(shù)據(jù)模型可用數(shù)據(jù)結(jié)構(gòu)來描述。數(shù)據(jù)模型不同,數(shù)據(jù)的組織結(jié)構(gòu)和操縱數(shù)據(jù)的方法也不同?,F(xiàn)在的數(shù)據(jù)庫大多數(shù)是以關(guān)系模型來組織數(shù)據(jù)的,可以簡單地把關(guān)系模型的數(shù)據(jù)結(jié)構(gòu)(即關(guān)系)理解為一張二維表。以關(guān)系模型組織起來的數(shù)據(jù)庫稱為關(guān)系數(shù)據(jù)庫。在關(guān)系數(shù)據(jù)庫中,不僅存放著各種用戶數(shù)據(jù),如與商品有關(guān)的數(shù)據(jù)、與客戶有關(guān)的數(shù)據(jù)、與訂單有關(guān)的數(shù)據(jù)等,還存放著與各個表結(jié)構(gòu)定義有關(guān)的數(shù)據(jù),這些數(shù)據(jù)通常被稱為元數(shù)據(jù)。數(shù)據(jù)庫是一個集成的數(shù)據(jù)集合,也就是說,數(shù)據(jù)庫中集中存放著各種各樣的數(shù)據(jù)。數(shù)據(jù)庫是一個可共享的數(shù)據(jù)集合,也就是說,數(shù)據(jù)庫中的數(shù)據(jù)可以被不同的用戶使用,每個用戶可以按自己的需求訪問相同的數(shù)據(jù)庫。數(shù)據(jù)庫是一個統(tǒng)一管理的數(shù)據(jù)集合,也就是說,數(shù)據(jù)庫由數(shù)據(jù)庫管理系統(tǒng)統(tǒng)一管理,任何數(shù)據(jù)訪問都是通過數(shù)據(jù)庫管理系統(tǒng)來完成的。3.?dāng)?shù)據(jù)庫管理系統(tǒng)數(shù)據(jù)庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)是一種用來管理數(shù)據(jù)庫的商品化軟件。數(shù)據(jù)庫管理系統(tǒng)主要提供以下功能。(1)數(shù)據(jù)定義。數(shù)據(jù)庫管理系統(tǒng)提供了數(shù)據(jù)定義語言(DataDefinitionLanguage,DDL)。通過DDL可以方便地定義數(shù)據(jù)庫中的各種對象。例如,可以使用DDL定義網(wǎng)上商城數(shù)據(jù)庫中的商品信息數(shù)據(jù)表、客戶數(shù)據(jù)表、訂單數(shù)據(jù)表的表結(jié)構(gòu)。(2)數(shù)據(jù)操縱。數(shù)據(jù)庫管理系統(tǒng)提供了數(shù)據(jù)操縱語言(DataManipulationLanguage,DML)。通過DML可以實現(xiàn)數(shù)據(jù)表中數(shù)據(jù)的基本操作,如向數(shù)據(jù)表中插入一行數(shù)據(jù)、修改數(shù)據(jù)表的數(shù)據(jù)、刪除數(shù)據(jù)表中的行、查詢數(shù)據(jù)表中的數(shù)據(jù)等。(3)安L)。通過DCL可以控制什么情況下誰可以執(zhí)行什么樣的數(shù)據(jù)操作。另外,由于數(shù)據(jù)庫是共享的,多個用戶可以同時訪問數(shù)據(jù)庫(并發(fā)操作),這可能會引起訪問沖突,從而導(dǎo)致數(shù)據(jù)不一致。數(shù)據(jù)庫管理系統(tǒng)還提供了并發(fā)控制的功能,以避免并發(fā)操作時可能帶來的數(shù)據(jù)不一致問題。(4)數(shù)據(jù)庫備份與恢復(fù)。數(shù)據(jù)庫管理系統(tǒng)提供了備份數(shù)據(jù)庫和恢復(fù)數(shù)據(jù)庫的功能。。4.?dāng)?shù)據(jù)庫應(yīng)用程序數(shù)據(jù)庫應(yīng)用程序是指利用某種程序設(shè)計語言,為實現(xiàn)某些特定功能而編寫的程序,如查詢程序、報表程序等。這些程序為最終用戶提供方便使用的可視化界面。最終用戶通過界面輸入必要的數(shù)據(jù)。應(yīng)用程序接收最終用戶輸入的數(shù)據(jù),并對其進行加工處理,轉(zhuǎn)換成數(shù)據(jù)庫管理系統(tǒng)能夠識別的SQL語句,然后將這些SQL語句傳給數(shù)據(jù)庫管理系統(tǒng),由數(shù)據(jù)庫管理系統(tǒng)執(zhí)行。數(shù)據(jù)庫管理系統(tǒng)負責(zé)從數(shù)據(jù)庫若干張數(shù)據(jù)表中找到符合查詢條件的數(shù)據(jù),將查詢結(jié)果返回給應(yīng)用程序,由應(yīng)用程序?qū)⒌玫降慕Y(jié)果顯示出來。由此可見,應(yīng)用程序為最終用戶訪問數(shù)據(jù)庫提供了有效途徑和簡便方法。5.?dāng)?shù)據(jù)庫用戶數(shù)據(jù)庫用戶是使用數(shù)據(jù)庫的人員,數(shù)據(jù)庫用戶一般有以下3類。(1)Java等)來編寫應(yīng)用程序。這些應(yīng)用程序通過向數(shù)據(jù)庫管理系統(tǒng)發(fā)送SQL語句,請求訪問數(shù)據(jù)庫。這些應(yīng)用程序既可以是批處理程序,又可以是聯(lián)機應(yīng)用程序,其作用是允許最終用戶通過客戶端、屏幕終端或瀏覽器訪問數(shù)據(jù)庫。(2)數(shù)據(jù)庫管理員:數(shù)據(jù)庫管理員(DatabaseAdministrator,DBA)是一類特殊的數(shù)據(jù)庫用戶,負責(zé)全面管理、控制、使用和維護數(shù)據(jù)庫,以保證數(shù)據(jù)庫處于最佳工作狀態(tài)。數(shù)據(jù)是企業(yè)最有價值的信息資源,而對數(shù)據(jù)擁有核心控制權(quán)限的人就是數(shù)據(jù)管理員(DataAdministrator,DA)。數(shù)據(jù)管理員的職責(zé)如下:決定什么數(shù)據(jù)存儲在數(shù)據(jù)庫中,并針對存儲的數(shù)據(jù)建立相應(yīng)的安全控制機制。注意,數(shù)據(jù)管理員是管理者而不一定是技術(shù)人員,負責(zé)執(zhí)行數(shù)據(jù)管理員的決定的技術(shù)人員就是數(shù)據(jù)庫管理員。數(shù)據(jù)庫管理員的任務(wù)是創(chuàng)建實際的數(shù)據(jù)庫以及執(zhí)行數(shù)據(jù)管理員需要實施的各種安全控制措施,確保數(shù)據(jù)庫的安全,并且提供各種技術(shù)支持服務(wù)。(3)最終用戶:最終用戶也稱終端用戶或一般用戶,他們通過客戶端、屏幕終端或瀏覽器與應(yīng)用程序交互來訪問數(shù)據(jù)庫,或者通過數(shù)據(jù)庫產(chǎn)品提供的接口程序訪問數(shù)據(jù)庫。6.?dāng)?shù)據(jù)庫系統(tǒng)數(shù)據(jù)庫系統(tǒng)(DatabaseSystem,DBS)由數(shù)據(jù)庫及其管理軟件組成,是存儲介質(zhì)、處理對象和管理系統(tǒng)的集合體,一般由數(shù)據(jù)、數(shù)據(jù)庫、數(shù)據(jù)庫管理系統(tǒng)、數(shù)據(jù)庫應(yīng)用系統(tǒng)、數(shù)據(jù)庫用戶和硬件構(gòu)成。數(shù)據(jù)是構(gòu)成數(shù)據(jù)庫的主體,是數(shù)據(jù)庫系統(tǒng)的管理對象。數(shù)據(jù)庫是存放數(shù)據(jù)的倉庫,數(shù)據(jù)庫管理系統(tǒng)是數(shù)據(jù)庫系統(tǒng)中的核心軟件,數(shù)據(jù)庫應(yīng)用系統(tǒng)是數(shù)據(jù)庫管理系統(tǒng)支持下由數(shù)據(jù)庫用戶根據(jù)實際需要開發(fā)的應(yīng)用程序。數(shù)據(jù)庫用戶包括應(yīng)用程序員、數(shù)據(jù)庫管理員和最終用戶。硬件是數(shù)據(jù)庫系統(tǒng)的物理支撐,包括CPU、內(nèi)存、硬盤及I/O設(shè)備等。7.關(guān)系數(shù)據(jù)庫關(guān)系數(shù)據(jù)庫是一種建立在關(guān)系模型上的數(shù)據(jù)庫,是目前非常受歡迎的數(shù)據(jù)庫管理系統(tǒng)。常用的關(guān)系數(shù)據(jù)庫有MySQL、SQLServer、Access、Oracle、DB2等。在關(guān)系數(shù)據(jù)庫中,關(guān)系模型就是一張二維表,因而一個關(guān)系數(shù)據(jù)庫就是若干張二維表的集合。8.系統(tǒng)數(shù)據(jù)庫MySQL主要包含information_schema、mysql、performance_schema、sys系統(tǒng)數(shù)據(jù)庫。在創(chuàng)建任何數(shù)據(jù)庫之前,用戶都可以使用命令查看系統(tǒng)數(shù)據(jù)庫,即在【命令提示符】窗口中登錄MySQL數(shù)據(jù)庫服務(wù)器,然后在“mysql>”命令提示符后輸入如下命令:ShowDatabases;按【Enter】鍵,執(zhí)行該命令,會顯示安裝MySQL時系統(tǒng)自動創(chuàng)建的4個數(shù)據(jù)庫。系統(tǒng)數(shù)據(jù)庫的說明如下。(1)information_schema數(shù)據(jù)庫。在MySQL中,information_schema數(shù)據(jù)庫中保存著MySQL數(shù)據(jù)庫服務(wù)器所維護的所有數(shù)據(jù)庫的信息,如數(shù)據(jù)庫名、數(shù)據(jù)庫的表、字段的數(shù)據(jù)類型、訪問權(quán)限與數(shù)據(jù)庫索引信息等。information_schema數(shù)據(jù)庫是一個虛擬數(shù)據(jù)庫,查詢數(shù)據(jù)時,從其他數(shù)據(jù)庫獲取相應(yīng)的信息。在information_schema數(shù)據(jù)庫中,有數(shù)張只讀表,它們實際上是視圖,而不是基本表,因此,用戶將無法看到與之相關(guān)的任何文件。information_schema數(shù)據(jù)庫提供了訪問數(shù)據(jù)庫元數(shù)據(jù)的方式。元數(shù)據(jù)是關(guān)于數(shù)據(jù)的數(shù)據(jù),如數(shù)據(jù)庫名稱(或數(shù)據(jù)表名稱)、字段的數(shù)據(jù)類型、訪問權(quán)限等。(2)mysql數(shù)據(jù)庫。mysql數(shù)據(jù)庫是MySQL的核心數(shù)據(jù)庫,主要負責(zé)存儲數(shù)據(jù)庫的用戶、權(quán)限設(shè)置、關(guān)鍵字,以及mysql自己需要使用的控制和管理信息等。例如,可以使用mysql數(shù)據(jù)庫中的mysql.user數(shù)據(jù)表來修改root用戶的密碼。
(3)performance_schema數(shù)據(jù)庫。。(4)sys數(shù)據(jù)庫。sys數(shù)據(jù)庫所有的數(shù)據(jù)源自performance_schema數(shù)據(jù)庫,其目的是把performance_schema數(shù)據(jù)庫的復(fù)雜度降低,讓數(shù)據(jù)庫管理員能更好地閱讀這個數(shù)據(jù)庫里的內(nèi)容,從而讓數(shù)據(jù)庫管理員更快地了解數(shù)據(jù)庫的運行情況。2.1.2認知創(chuàng)建MySQL數(shù)據(jù)庫的命令MySQL安裝與配置完成后,需要創(chuàng)建數(shù)據(jù)庫,這是使用MySQL各項功能的前提。創(chuàng)建數(shù)據(jù)庫是指在系統(tǒng)磁盤上劃分一塊區(qū)域用于數(shù)據(jù)的存儲和管理。默。MySQL提供了創(chuàng)建數(shù)據(jù)庫的命令CreateDatabase。創(chuàng)建MySQL數(shù)據(jù)庫的命令的語法格式如下:Create{Database|Schema}[IfNotExists]<數(shù)據(jù)庫名稱>[create_specification,…]其中,create_specification的可選項如下:[Default]CharacterSet<字符集名稱>|[Default]Collate<排序規(guī)則名稱>(1)命令中括號“[
]”中的內(nèi)容為可選項,其余為必須書寫的項;二者選其一的選項使用“|”分隔;多個選項或參數(shù)列出前面一個或多個選項,使用“…”表示可有多個選項或參數(shù)。(2)CreateDatabase為創(chuàng)建數(shù)據(jù)庫的必需項,不能省略。(3)由于MySQL的數(shù)據(jù)存儲區(qū)將以文件夾方式表示MySQL數(shù)據(jù)庫,所以,命令中的數(shù)據(jù)庫名稱必須符合操作系統(tǒng)文件夾命名規(guī)則。MySQL中不區(qū)分字母大小寫。(4)IfNotExists為可選項,用于在創(chuàng)建數(shù)據(jù)庫之前,判斷即將創(chuàng)建的數(shù)據(jù)庫名是否存在。如果不存在,則創(chuàng)建該數(shù)據(jù)庫。如果已經(jīng)存在同名的數(shù)據(jù)庫,則不創(chuàng)建任何數(shù)據(jù)庫。如果存在同名數(shù)據(jù)庫,并且沒有指定IfNotExists,則會出現(xiàn)錯誤提示。(5)create_specification用于指定數(shù)據(jù)庫的特性。數(shù)據(jù)庫特性存儲在數(shù)據(jù)庫文件夾中的“db.opt”文件中。Default用于指定默認值,CharacterSet子句用于指定默認的數(shù)據(jù)庫字符集,Collate子句用于指定默認的數(shù)據(jù)庫排序規(guī)則。(6)在MySQL中,每一條SQL語句都以半角分號“;”或“\g”或“\G”作為結(jié)束標志。創(chuàng)建MySQL數(shù)據(jù)庫的示例語句如下:CreateDatabaseIfNotExistsBookDBDefaultCharsetutf8Collateutf8_general_ci;【任務(wù)2-1】使用NavicatforMySQL工具創(chuàng)建數(shù)據(jù)庫MallDB【任務(wù)描述】在NavicatforMySQL圖形化環(huán)境中完成以下任務(wù)。(1)創(chuàng)建連接“MallConn”。(2)創(chuàng)建數(shù)據(jù)庫“MallDB”。(3)查看連接“MallConn”里的數(shù)據(jù)庫。(4)打開新創(chuàng)建的數(shù)據(jù)庫“MallDB”?!救蝿?wù)實施】1.創(chuàng)建連接“MallConn”(1)啟動圖形管理工具NavicatforMySQL。雙擊桌面快捷方式【NavicatforMySQL】,啟動圖形管理工具NavicatforMySQL。(2)建立連接“MallConn”。在【Navic→【MySQL】命令,如圖所示。在【文件】菜單的下拉菜單中依次選擇【新建連接】→【MySQL】命令在【MySQL-新建連接】對話框中設(shè)置連接參數(shù),在“連接名”文本框中輸入“MallConn”,然后分別輸入主機名或IP地址、端口號、用戶名和登錄密碼,如圖所示?!綧ySQL-新建連接】對話框輸入完成后單擊【測試連接】按鈕,彈出“連接成功”提示信息對話框,如圖所示,表示連接創(chuàng)建成功,單擊【確定】按鈕保存所創(chuàng)建的連接,【NavicatforMySQL】窗口左側(cè)窗格就會出現(xiàn)連接“MallConn”。“連接成功”提示信息對話框(3)打開連接“MallConn”。在【NavicatforMySQL】窗口左側(cè)窗格中右擊剛創(chuàng)建的連接“MallConn”,在彈出的快捷菜單中選擇【打開連接】命令,如圖所示。在連接“MallConn”的快捷菜單中選擇【打開連接】命令即可打開“MallConn”連接,顯示“MallConn”連接中的數(shù)據(jù)庫,如圖所示?!癕allConn”連接中的數(shù)據(jù)庫2.創(chuàng)建數(shù)據(jù)庫“MallDB”在【NavicatforMySQL】窗口左側(cè)窗格中右擊打開的連接名“MallConn”,在彈出的快捷菜單中選擇【新建數(shù)據(jù)庫】命令,如圖所示,彈出【新建數(shù)據(jù)庫】對話框。在快捷菜單中選擇【新建數(shù)據(jù)庫】命令在【新建數(shù)據(jù)庫】對話框的“數(shù)據(jù)庫名”文本框中輸入“MallDB”,在“字符集”下拉列表中選擇“utf8”,在“排序規(guī)則”下拉列表中選擇“utf8_general_ci”,如圖所示?!拘陆〝?shù)據(jù)庫】對話框在【新建數(shù)據(jù)庫】對話框中切換到【SQL預(yù)覽】選項卡,如圖所示?!拘陆〝?shù)據(jù)庫】對話框的【SQL預(yù)覽】選項卡從【SQL預(yù)覽】選項卡可以看出,創(chuàng)建MySQL數(shù)據(jù)庫“MallDB”的語句如下:CREATEDATABASE'MallDB'CHARACTERSET'utf8'COLLATE'utf8_general_ci';在【新建數(shù)據(jù)庫】對話框中單擊【確定】按鈕,完成數(shù)據(jù)庫“MallDB”的創(chuàng)建。3.查看連接“MallConn”里的數(shù)據(jù)庫在【NavicatforMySQL】窗口中展開“MallConn”連接中的數(shù)據(jù)庫列表,可以看到剛才創(chuàng)建的數(shù)據(jù)庫“MallDB”,如圖所示。展開“MallConn”連接中的數(shù)據(jù)庫列表4.打開新創(chuàng)建的數(shù)據(jù)庫MallDB在【NavicatforMySQL】窗口左側(cè)窗格中右擊新創(chuàng)建的數(shù)據(jù)庫“MallDB”,在彈出的快捷菜單中選擇【打開數(shù)據(jù)庫】命令,如圖所示。在快捷菜單中選擇【打開數(shù)據(jù)庫】命令數(shù)據(jù)庫“MallDB”的打開狀態(tài)如圖所示。數(shù)據(jù)庫“MallDB”的打開狀態(tài)【任務(wù)2-2】在【命令提示符】窗口中使用CreateDatabase語句創(chuàng)建數(shù)據(jù)庫【任務(wù)描述】(1)創(chuàng)建一個名為“StudentDB”的數(shù)據(jù)庫,并指定其默認字符集為utf8。(2)查看MySQL數(shù)據(jù)庫服務(wù)器主機上的數(shù)據(jù)庫。【任務(wù)實施】1.創(chuàng)建數(shù)據(jù)庫“StudentDB”(1)登錄MySQL數(shù)據(jù)庫服務(wù)器。打開Windows操作系統(tǒng)的【命令提示符】窗口,在【命令提示符】窗口的命令提示符后輸入命令“mysql-uroot-p123456”,按【Enter】鍵后,當(dāng)窗口中命令提示符變?yōu)椤癿ysql>”時,表示已經(jīng)成功登錄到MySQL服務(wù)器。(2)輸入創(chuàng)建數(shù)據(jù)庫的語句。在命令提示符“mysql>”后面輸入創(chuàng)建數(shù)據(jù)庫的語句:CreateDatabaseIfNotExistsStudentDB;按【Enter】鍵,執(zhí)行結(jié)果如下所示:QueryOK,1rowaffected,1warning(0.47sec)結(jié)果表示數(shù)據(jù)庫創(chuàng)建成功。創(chuàng)建數(shù)據(jù)庫的語句中包含了“IfNotExists”,表示如果待創(chuàng)建的數(shù)據(jù)庫不存在則創(chuàng)建,存在則不創(chuàng)建,其作用是避免服務(wù)器上已經(jīng)存在同名的數(shù)據(jù)庫時,創(chuàng)建該同名數(shù)據(jù)庫出現(xiàn)錯誤提示信息的情況。2.查看MySQL數(shù)據(jù)庫服務(wù)器主機上的數(shù)據(jù)庫在命令提示符“mysql>”后面輸入以下語句:ShowDatabases;按【Enter】鍵,查看MySQL數(shù)據(jù)庫服務(wù)器主機上的數(shù)據(jù)庫,如圖所示。查看MySQL數(shù)據(jù)庫服務(wù)器主機上的數(shù)據(jù)庫從顯示的結(jié)果可以看出,“StudentDB”數(shù)據(jù)庫已經(jīng)存在,表示該數(shù)據(jù)庫已創(chuàng)建成功?!局匾f明】本單元各個任務(wù)的實施過程首先需要打開Windows操作系統(tǒng)的【命令提示符】窗口,然后要登錄MySQL數(shù)據(jù)庫服務(wù)器,后面的任務(wù)不再重復(fù)說明這兩個步驟。2.2選擇與查看數(shù)據(jù)庫了。使用CreateDatabase語句創(chuàng)建數(shù)據(jù)庫之后,該數(shù)據(jù)庫不會自動成為當(dāng)前數(shù)據(jù)庫,需要使用Use語句來指定。在MySQL中,對數(shù)據(jù)表進行操作之前,需要選擇該數(shù)據(jù)表所在的數(shù)據(jù)庫。選擇MySQL數(shù)據(jù)庫的命令的語法格式如下:Use數(shù)據(jù)庫名稱;【語法說明】該語句通過MySQL將指定的數(shù)據(jù)庫作為默認(當(dāng)前)數(shù)據(jù)庫使用,用于后續(xù)各語句。該數(shù)據(jù)庫保持默認狀態(tài),直到語句段的結(jié)束,或者另一個不同的Use語句被執(zhí)行。這個語句也可以用來從一個數(shù)據(jù)庫“切換”到另一個數(shù)據(jù)庫。【任務(wù)2-3】在【命令提示符】窗口中使用語句方式選擇與查看數(shù)據(jù)庫相關(guān)信息【任務(wù)描述】(1)選擇數(shù)據(jù)庫“StudentDB”作為當(dāng)前數(shù)據(jù)庫。(2)查看數(shù)據(jù)庫“StudentDB”使用的字符集。(3)查看當(dāng)前使用的數(shù)據(jù)庫。(4)查看數(shù)據(jù)庫“StudentDB”使用的端口。(5)查看數(shù)據(jù)庫文件的存放路徑?!救蝿?wù)實施】1.選擇數(shù)據(jù)庫“StudentDB”作為當(dāng)前數(shù)據(jù)庫輸入選擇當(dāng)前數(shù)據(jù)庫的語句。在命令提示符“mysql>”后輸入語句:UseStudentDB;按【Enter】鍵后出現(xiàn)提示信息“Databasechanged”,表示選擇數(shù)據(jù)庫成功。2.查看數(shù)據(jù)庫“StudentDB”使用的字符集在命令提示符“mysql>”后輸入語句:ShowCreateDatabaseStudentDB;按【Enter】鍵,查看數(shù)據(jù)庫“StudentDB”使用的字符集,如圖所示。查看數(shù)據(jù)庫“StudentDB”使用的字符集圖2-13中顯示了當(dāng)前數(shù)據(jù)庫名稱為“StudentDB”、數(shù)據(jù)庫使用的字符集為utf8。3.查看當(dāng)前使用的數(shù)據(jù)庫在命令提示符“mysql>”后輸入語句“SelectDatabase();”,然后按【Enter】鍵執(zhí)行該語句,查看當(dāng)前使用的數(shù)據(jù)庫,如圖所示。查看當(dāng)前使用的數(shù)據(jù)庫4.查看數(shù)據(jù)庫“StudentDB”使用的端口在命令提示符“mysql>”后輸入語句“ShowVariablesLike'port';”,然后按【Enter】鍵執(zhí)行該語句,查看當(dāng)前數(shù)據(jù)庫“StudentDB”使用的端口,如圖所示。查看數(shù)據(jù)庫“StudentDB”使用的端口5.查看數(shù)據(jù)庫文件的存放路徑在命令提示符“mysql>”后輸入語句“ShowVariablesLike'%datadir%';”,然后按【Enter】鍵執(zhí)行該語句,查看數(shù)據(jù)庫文件的存放路徑,如圖所示。查看數(shù)據(jù)庫文件的存放路徑由圖2-16可知,數(shù)據(jù)庫文件的存放路徑為“D:\MySQL\data\”。2.3修改數(shù)據(jù)庫數(shù)據(jù)庫創(chuàng)建后,如果需要修改數(shù)據(jù)庫,可以使用AlterDatabase語句。其語法格式如下:Alter{Database|Schema}[數(shù)據(jù)庫名稱][alter_specification,…]其中,alter_specification的可選項如下:[Default]CharacterSet字符集名稱|[Default]Collate排序規(guī)則名稱?!救蝿?wù)2-4】使用AlterDatabase語句修改數(shù)據(jù)庫【任務(wù)描述】(1)選擇數(shù)據(jù)庫“StudentDB”作為當(dāng)前數(shù)據(jù)庫。(2)查看數(shù)據(jù)庫“StudentDB”默認的字符集。(3)查看數(shù)據(jù)庫“StudentDB”默認的排序規(guī)則。(4)修改數(shù)據(jù)庫“StudentDB”的默認字符集和排序規(guī)則。(5)查看數(shù)據(jù)庫“StudentDB”修改后的字符集。(6)查看數(shù)據(jù)庫“StudentDB”修改后的排序規(guī)則?!救蝿?wù)實施】1.選擇數(shù)據(jù)庫“StudentDB”作為當(dāng)前數(shù)據(jù)庫在命令提示符“mysql>”后輸入語句“UseStudentDB;”,然后按【Enter】鍵執(zhí)行該語句,若出現(xiàn)提示信息“Databasechanged”,則表示選擇數(shù)據(jù)庫成功。2.查看數(shù)據(jù)庫“StudentDB”默認的字符集在命令提示符“mysql>”后輸入語句“ShowVariablesLike'character%';”,然后按【Enter】鍵執(zhí)行該語句,查看數(shù)據(jù)庫“StudentDB”默認的字符集,如圖所示。查看數(shù)據(jù)庫“StudentDB”默認的字符集3.查看數(shù)據(jù)庫“StudentDB”默認的排序規(guī)則在命令提示符“mysql>”后輸入語句“ShowVariablesLike'collation%';”,然后按【Enter】鍵執(zhí)行該語句,查看數(shù)據(jù)庫“StudentDB”默認的排序規(guī)則,如圖所示。查看數(shù)據(jù)庫“StudentDB”默認的排序規(guī)則4.修改數(shù)據(jù)庫“StudentDB”的默認字符集和排序規(guī)則在命令提示符“mysql>”后輸入以下語句:AlterDatabaseStudentDBCharacterSetgb2312Collategb2312_chinese_ci;按【Enter】鍵,若出現(xiàn)“QueryOK,1rowaffected(0.48sec)”提示信息,則表示修改成功。5.查看數(shù)據(jù)庫“StudentDB”修改后的字符集在命令提示符“mysql>”后輸入語句“ShowVariablesLike'character%';”,然后按【Enter】鍵執(zhí)行該語句,查看數(shù)據(jù)庫“StudentDB”修改后的字符集,如圖所示。查看數(shù)據(jù)庫“StudentDB”修改后的字符集由于本任務(wù)第4步已將數(shù)據(jù)庫“StudentDB”的默認字符集修改為“gb2312”,所以圖2-20中的“character_set_database”的“Value”為“gb2312”。圖2-19中的“character_set_client”為客戶端字符集,“character_set_connection”為建立連接使用的字符集,“character_set_database”為數(shù)據(jù)庫的字符集,“character_set_results”為結(jié)果集的字符集,“character_set_server”為數(shù)據(jù)庫服務(wù)器的字符集。只要保證以上采用的字符集一樣,就不會出現(xiàn)亂碼問題。6.查看數(shù)據(jù)庫“StudentDB”修改后的排序規(guī)則在命令提示符“mysql>”后輸入語句“ShowVariablesLike'collation%';”,然后按【Enter】鍵執(zhí)行該語句,查看數(shù)據(jù)庫“StudentDB”修改后的排序規(guī)則,如圖所示。圖2-20查看數(shù)據(jù)庫“StudentDB”修改后的排序規(guī)則由于本任務(wù)第4步已將數(shù)據(jù)庫“StudentDB”的排序規(guī)則修改為“gb2312_chinese_ci”,所以上圖中的“collation_database”的“Value”為“gb2312_chinese_ci”。2.4刪除數(shù)據(jù)庫刪除數(shù)據(jù)庫是指在數(shù)據(jù)庫系統(tǒng)中刪除已經(jīng)存在的數(shù)據(jù)庫,即將已經(jīng)存在的數(shù)據(jù)庫從磁盤中清除。刪除數(shù)據(jù)庫之后,數(shù)據(jù)庫中的所有數(shù)據(jù)也將被刪除,原來分配的空間將被收回。值得注意的是,刪除數(shù)據(jù)庫會永久刪除該數(shù)據(jù)庫中所有的數(shù)據(jù)表及其數(shù)據(jù)。因此,在刪除數(shù)據(jù)庫時,應(yīng)特別謹慎。在MySQL中,使用DropDatabase語句可刪除數(shù)據(jù)庫,其語法格式如下:DropDatabase[IfExists]<數(shù)據(jù)庫名>;若使用“IfExists”子句,則可避免在刪除不存在的數(shù)據(jù)庫時出現(xiàn)錯誤提示信息;如果沒有使用“IfExists”子句,并且刪除的數(shù)據(jù)庫在MySQL中不存在,系統(tǒng)就會出現(xiàn)錯誤提示信息?!救蝿?wù)2-5】使用DropDatabase語句刪除數(shù)據(jù)庫【任務(wù)描述】(1)查看MySQL當(dāng)前連接中的數(shù)據(jù)庫。(2)刪除數(shù)據(jù)庫“StudentDB”。(3)再一次查看MySQL當(dāng)前連接中的數(shù)據(jù)庫。【任務(wù)實施】1.查看MySQL當(dāng)前連接中的數(shù)據(jù)庫在命令提示符“mysql>”后輸入“ShowDatabases;”語句,按【Enter】鍵執(zhí)行語句,從執(zhí)行結(jié)果中可以看出MySQL當(dāng)前連接中包含了“StudentDB”數(shù)據(jù)庫。2.刪除數(shù)據(jù)庫“StudentDB”在命令提示符“mysql>”后輸入以下語句:DropDatabaseStudentDB;按【Enter】鍵,出現(xiàn)“QueryOK,0rowsaffected(0.11sec)”提示信息,表示刪除成功。3.再一次查看MySQL當(dāng)前連接中的數(shù)據(jù)庫在命令提示符“mysql>”后輸入“ShowDatabases;”語句,按【Enter】鍵查看MySQL當(dāng)前連接中的數(shù)據(jù)庫,結(jié)果如圖所示,可以看出當(dāng)前連接中數(shù)據(jù)庫“StudentDB”已不存在。刪除數(shù)據(jù)庫“StudentDB”后查看MySQL當(dāng)前連接中的數(shù)據(jù)庫2.5MySQL數(shù)據(jù)庫存儲引擎2.5.1MySQL存儲引擎的類型數(shù)據(jù)庫的存儲引擎決定了數(shù)據(jù)表在計算機中的存儲方式,不同的存儲引擎具有不同的存儲機制、索引技巧、鎖定水平等功能。使用不同的存儲引擎,還可以使用特定的功能。MySQL核心就是存儲引擎,MySQL提供了多種不同的存儲引擎,包括處理事務(wù)安全的引擎和處理非事務(wù)安全的引擎。在MySQL中,不需要在整個服務(wù)器中使用同一種存儲引擎。針對具體的要求,可以對每一張數(shù)據(jù)表使用不同的存儲引擎。MySQL數(shù)據(jù)庫中的表可以使用不同的方式存儲,用戶可以根據(jù)自己的需求,靈活選擇不同的存儲方式。使用合適的存儲引擎,將會提升整個數(shù)據(jù)庫的性能。目前,MySQL支持的存儲引擎有Memory、MRG_MYISAM、CSV、FEDERATED、PERFORMANCE_SCHEMA、MyISAM、InnoDB、BLACKHOLE、Archive等。(1)InnoDB存儲引擎是事務(wù)型數(shù)據(jù)庫的首選引擎。(2)M(3)Memory存儲引擎是MySQL中的一類特殊的存儲引擎。2.5.2MySQL存儲引擎的選擇不同存儲引擎有各自的特點,適用于不同的需求。(1)InnoDB存儲引擎:如果要提供提交、回滾和崩潰恢復(fù)能力的事務(wù)安全能力,并要求實現(xiàn)并發(fā)控制,InnoDB
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度精密產(chǎn)品模具設(shè)計與委托加工服務(wù)合同4篇
- 2025年休閑公園場地租賃合同印花稅繳納規(guī)范2篇
- 專業(yè)發(fā)藝師2024服務(wù)協(xié)議樣本版A版
- 2025年度智慧農(nóng)業(yè)園區(qū)場商位租賃與農(nóng)產(chǎn)品上行合同4篇
- 專用消防系統(tǒng)增補協(xié)議樣本2024版A版
- 2025年度多功能鏟車租賃服務(wù)合同范本4篇
- 2025年度文化創(chuàng)意產(chǎn)業(yè)合作開發(fā)合同7篇
- 2025年度可打印PAD與智能教室系統(tǒng)配套合同3篇
- 2024蔬菜種植合作社與社區(qū)團購平臺合作協(xié)議范本3篇
- 2025年度拆伙協(xié)議書范本下載4篇
- 2024年職工普法教育宣講培訓(xùn)課件
- 金蛇納瑞企業(yè)2025年會慶典
- 安保服務(wù)評分標準
- T-SDLPA 0001-2024 研究型病房建設(shè)和配置標準
- (人教PEP2024版)英語一年級上冊Unit 1 教學(xué)課件(新教材)
- 全國職業(yè)院校技能大賽高職組(市政管線(道)數(shù)字化施工賽項)考試題庫(含答案)
- 2024胃腸間質(zhì)瘤(GIST)診療指南更新解讀 2
- 光儲電站儲能系統(tǒng)調(diào)試方案
- 2024年二級建造師繼續(xù)教育題庫及答案(500題)
- 小學(xué)數(shù)學(xué)二年級100以內(nèi)連加連減口算題
- 建設(shè)單位如何做好項目管理
評論
0/150
提交評論