MySQL數據庫應用與管理實戰(zhàn)全套教學課件_第1頁
MySQL數據庫應用與管理實戰(zhàn)全套教學課件_第2頁
MySQL數據庫應用與管理實戰(zhàn)全套教學課件_第3頁
MySQL數據庫應用與管理實戰(zhàn)全套教學課件_第4頁
MySQL數據庫應用與管理實戰(zhàn)全套教學課件_第5頁
已閱讀5頁,還剩468頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

模塊1啟動與登錄MySQLMySQL數據庫應用與管理實戰(zhàn)全套可編輯PPT課件1.1認識MySQL與NavicatMySQL是目前最流行的開放源代碼的小型數據庫管理系統(tǒng)之一,被廣泛地應用于各類中小型網站中。由于其體積小、運行速度快、總體成本低、開放源代碼,許多中小型網站都選擇MySQL作為網站數據庫。與其他的大型數據庫管理系統(tǒng)(DBMS)相比,MySQL有一些不足之處,但這絲毫沒有影響它受歡迎的程度。對一般的個人用戶和中小企業(yè)來說,MySQL提供的功能已綽綽有余。MySQL概述1.1認識MySQL與NavicatMySQL的主要特點01可移植性強02運行速度快03支持多平臺04支持各種開發(fā)語言05提供多種存儲引擎06功能強大07安全度高08價格低廉1.1認識MySQL與NavicatMySQL的管理維護工具非常多,除自帶的命令行管理工具之外,還有許多圖形化管理工具。其中Navicat是一套快速、可靠且價格便宜的圖形化管理工具,專為簡化數據庫的管理及降低系統(tǒng)管理成本而開發(fā)。設計能滿足數據庫管理員、開發(fā)人員及中小企業(yè)的需要擁有直觀化的圖形用戶界面,讓用戶可以用安全并且簡單的方式創(chuàng)建、組織、訪問和共享MySQL數據庫中的數據。用來對本機或遠程的MySQL、SQLServer、SQLite、Oracle及PostgreSQL數據庫進行管理及開發(fā)。功能足以滿足專業(yè)開發(fā)人員的所有需求,對數據庫新手來說相當容易學習。1.1認識MySQL與NavicatNavicat包括多個產品一套專為MySQL設計的高性能數據庫管理及開發(fā)工具??梢杂糜贛ySQL3.21及以上的服務器中,并支持部分MySQL的最新功能,包括觸發(fā)器、存儲過程、函數、事件、視圖、管理用戶等一種可多重連接的數據庫管理工具,它可讓用戶以單一程序同時連接到MySQL、Oracle、PostgreSQL、SQLite及SQLServer數據庫中,讓管理不同類型的數據庫變得更加方便。NavicatPremium使用戶能簡單并快速地在各種數據庫系統(tǒng)間傳輸數據,或傳輸指定SQL格式及編碼的純文本文件NavicatforMySQLNavicatPremium1.2啟動與停止MySQL服務【任務分析】要想連接MySQL數據庫,首先就是要保證MySQL服務已經啟動,那么如何啟動MySQL服務呢?一般來說安裝MySQL的時候可以選擇自動啟動服務或手動啟動服務,在安裝與配置MySQL服務時,如果已經將MySQL安裝為Windows服務,那么當Windows啟動或停止時,MySQL服務也會自動啟動或停止;還可以使用命令方式和圖形服務工具來啟動或停止MySQL服務。1.2啟動與停止MySQL服務以管理員身份打開Windows的命令行窗口,在命令提示符后輸入以下命令啟動MySQL服務:netstart[服務名稱]也可以直接輸入以下命令:netstart按【Enter】鍵執(zhí)行該命令,默認啟動服務名稱為MySQL的服務。該命令成功運行后會顯示多行提示信息,如圖1-1所示,這些提示信息最后一行內容為“命令成功完成?!眻D1-1執(zhí)行“netstart”命令后顯示的多行提示信息啟動MySQL服務的命令1.2啟動與停止MySQL服務以管理員身份打開Windows的命令行窗口,在命令提示符后輸入以下命令可停止MySQL服務:netstop[服務名稱]停止MySQL服務的命令1.2啟動與停止MySQL服務啟動或停止MySQL服務的圖形服務工具主要有以下兩種。Windows操作系統(tǒng)的【服務】窗口。Windows操作系統(tǒng)的【任務管理器】窗口。啟動或停止MySQL服務的圖形服務工具1.2啟動與停止MySQL服務【任務描述】MySQL安裝完成后,只有成功啟動MySQL服務,用戶才可以通過MySQL客戶端登錄到MySQL服務器。分別使用Windows的【服務】窗口、【任務管理器】窗口以及相關命令啟動與停止MySQL服務,具體要求如下。(1)在【服務】窗口中啟動MySQL服務。(2)在【任務管理器】窗口中查看MySQL服務進程的運行狀態(tài)。(3)使用“netstop”命令停止MySQL服務。(4)在【任務管理器】窗口中查看MySQL服務的停止狀態(tài)。(5)使用“netstart”命令啟動MySQL服務。(6)在【服務】窗口中查看MySQL服務的狀態(tài)。(7)在【服務】窗口中停止MySQL服務。(8)在【任務管理器】窗口中啟動MySQL服務?!救蝿?-1】啟動與停止MySQL服務1.2啟動與停止MySQL服務【任務實施】圖1-2在【服務】窗口中啟動“MySQL”服務01OPTION在【服務】窗口中啟動MySQL服務在【服務】窗口中選擇名稱為“MySQL”的服務,單擊鼠標右鍵,在彈出的快捷菜單中選擇【啟動】命令,如圖1-2所示,即可啟動“MySQL”服務。1.2啟動與停止MySQL服務在【任務管理器】窗口中查看MySQL服務進程的運行狀態(tài)圖1-3在【任務管理器】窗口中查看MySQL服務進程“mysqld.exe”的運行狀態(tài)按【Ctrl+Alt+Delete】組合鍵打開【任務管理器】窗口(這里為Windows10操作系統(tǒng)的【任務管理器】窗口),切換到【詳細信息】選項卡可以看到MySQL服務進程“mysqld.exe”正在運行,如圖1-3所示。在【任務管理器】窗口中切換到【服務】選項卡,可以看到“MySQL”服務正在運行,如圖1-4所示。圖1-4在【任務管理器】窗口中查看“MySQL”服務的運行狀態(tài)02OPTION1.2啟動與停止MySQL服務使用“netstop”命令停止MySQL服務以管理員身份打開命令行窗口,在命令提示符后輸入以下命令:netstopMySQL這里的MySQL為服務名稱。按【Enter】鍵執(zhí)行該命令,將出現“MySQL服務已成功停止”提示信息,如圖1-5所示。圖1-5?使用“netstop”命令停止“MySQL”服務03OPTION1.2啟動與停止MySQL服務在【任務管理器】窗口中查看MySQL服務的停止狀態(tài)打開【任務管理器】窗口,切換到【服務】選項卡,可以看到“MySQL”服務處于“已停止”狀態(tài),如圖1-6所示。圖1-6?在【任務管理器】窗口中查看“MySQL”服務的停止狀態(tài)04OPTION1.2啟動與停止MySQL服務使用“netstart”命令啟動MySQL服務以管理員身份打開Windows的命令行窗口,在命令提示符后輸入以下命令:netstartMySQL按回車鍵【Enter】執(zhí)行該命令。05OPTION1.2啟動與停止MySQL服務在【服務】窗口中查看MySQL服務的狀態(tài)打開【任務管理器】窗口,在該窗口中單擊【打開服務】按鈕,打開【服務】窗口,在該窗口中找到名稱為“MySQL”的服務,如圖1-7所示,可以看到該服務的狀態(tài)為“正在運行”。圖1-7?在【服務】窗口中查看“MySQL”服務的狀態(tài)06OPTION1.2啟動與停止MySQL服務在【服務】窗口中停止MySQL服務在【服務】窗口中選擇名稱為“MySQL”的服務,單擊鼠標右鍵,在彈出的快捷菜單中選擇【停止】命令,如圖1-8所示,即可停止“MySQL”服務。圖1-8?在【服務】窗口中停止“MySQL”服務07OPTION1.2啟動與停止MySQL服務在【任務管理器】窗口中啟動MySQL服務打開【任務管理器】窗口,在該窗口中選擇名稱為“MySQL”的服務,單擊鼠標右鍵,在彈出的快捷菜單中選擇【開始】命令,如圖1-9所示,即可啟動“MySQL”服務。圖1-9?在【任務管理器】窗口中啟動“MySQL”服務08OPTION1.3登錄與退出MySQL服務器登錄MySQL服務器的命令的完整形式如下:MySQL-h<服務器主機名或主機地址>–P<端口號>–u<用戶名>–p<密碼>可以寫成以下形式:MySQL–hlocalhost–uroot–p123456MySQL–h–uroot–p1234561.3登錄與退出MySQL服務器MySQL為登錄命令。參數“-h<服務器主機名或主機地址>”用于設置MySQL服務器,-h后面接MySQL服務器的名稱或IP地址,如果MySQL服務器在本地計算機上,主機名可以寫成“l(fā)ocalhost”,也可以寫IP地址“”。對于本機操作可以省略“-h<服務器主機名或主機地址>”。參數“-P<端口號>”用于設置訪問服務器的端口,使用默認端口號時可省略“<端口號>”,注意這里為大寫字母“P”。參數“–u<用戶名>”用于設置登錄MySQL服務器的用戶名,-u與<用戶名>之間可以有空格,也可以沒有空格。MySQL安裝與配置完成后,會自動創(chuàng)建一個root用戶。參數“–p<密碼>”用于設置登錄MySQL服務器的密碼,-p后面可以不寫密碼,按【Enter】鍵后會提示輸入密碼;如果寫密碼,-p與密碼之間沒有空格。注意這里為小寫字母“p”。1.3登錄與退出MySQL服務器【任務描述】(1)以MySQL初始化處理時生成的密碼登錄MySQL服務器。(2)將登錄MySQL服務器的密碼修改為“123456”。(3)退出MySQL服務器。(4)以修改后的新密碼登錄MySQL服務器?!救蝿?-2】登錄與退出MySQL服務器1.3登錄與退出MySQL服務器【任務實施】01OPTION以MySQL初始化處理時生成的密碼登錄MySQL服務器打開命令行窗口,在命令提示符后輸入以下命令:MySQL-uroot-p按【Enter】鍵后會提示“Enterpassword:”,在其后輸入前面MySQL初始化處理時自動生成的密碼,例如“o16QlMULprt”。按【Enter】鍵后若顯示如下所示的多行提示信息,表示成功登錄MySQL。1.3登錄與退出MySQL服務器WelcometotheMySQLmonitor.Commandsendwith;or\g.YourMySQLconnectionidis17Serverversion:8.0.21MySQLCommunityServer-GPLCopyright(c)2000,2020,Oracleand/oritsaffiliates.Allrightsreserved.OracleisaregisteredtrademarkofOracleCorporationand/oritsaffiliates.Othernamesmaybetrademarksoftheirrespectiveowners.Type'help;'or‘\h’forhelp.Type'\c'toclearthecurrentinputstatement.MySQL登錄成功后,命令提示符變成“mysql>”1.3登錄與退出MySQL服務器修改登錄MySQL服務器的密碼在命令提示符“mysql>”后輸入以下命令:setpasswordforroot@localhost='123456';按【Enter】鍵執(zhí)行該命令,可以將登錄密碼修改為“123456”。02OPTION1.3登錄與退出MySQL服務器退出MySQL服務器在命令提示符“mysql>”后輸入“quit;”或“exit;”并按【Enter】鍵即可退出MySQL的登錄狀態(tài),并會顯示“Bye”提示信息。03OPTION以修改后的新密碼登錄MySQL服務器打開命令行窗口,在命令提示符后輸入命令“MySQL–uroot–p”,按【Enter】鍵后,輸入正確的密碼,這里輸入修改后的新密碼“123456”,將顯示圖1-10所示的相關信息。04OPTION圖1-10在命令行窗口中以修改后的新密碼登錄MySQL服務器1.4試用MySQL的管理工具【任務描述】(1)使用命令“MySQL-uroot-p”登錄MySQL服務器。(2)使用命令“exit;”退出MySQL服務器。(3)使用命令“MySQL–hlocalhost–uroot-p”登錄MySQL服務器。(4)查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫。(5)查看MySQL的狀態(tài)信息。(6)查看MySQL的版本信息以及連接用戶名。(7)使用命令“quit;”退出MySQL服務器。【任務1-3】試用MySQL的命令行工具1.4試用MySQL的管理工具【任務實施】01OPTION使用命令“MySQL-uroot-p”登錄MySQL服務器打開命令行窗口,在命令提示符后輸入以下命令:MySQL-uroot-p按【Enter】鍵后會提示“Enterpassword:”,在其后輸入前面已設置的密碼“123456”,按【Enter】鍵后若顯示多行提示信息,表示成功登錄MySQL。MySQL登錄成功后,命令提示符變成“mysql>”,此時就可以開始對數據庫進行操作。1.4試用MySQL的管理工具使用命令“exit;”退出MySQL服務器在MySQL的命令提示符“mysql>”后輸入命令“exit;”,按【Enter】鍵即可退出MySQL服務器的登錄狀態(tài)。02OPTION使用命令“MySQL-hlocalhost-uroot-p”登錄MySQL服務器在Windows命令行窗口的命令提示符后輸入命令“MySQL–hlocalhost–uroot-p”,按【Enter】鍵后輸入正確的密碼,這里輸入前面已設置的密碼“123456”。當窗口中命令提示符變?yōu)椤癿ysql>”時,表示已經成功登錄MySQL服務器,如圖1-11所示。圖1-11使用命令“MySQL-hlocalhost-uroot-p”登錄MySQL服務器03OPTION1.4試用MySQL的管理工具查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫在“mysql>”命令提示符后輸入“showdatabases;”命令,按【Enter】鍵執(zhí)行該命令,會顯示安裝MySQL時系統(tǒng)自動創(chuàng)建的4個數據庫,如圖1-12所示。04OPTION圖1-12查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫查看MySQL的狀態(tài)信息在“mysql>”命令提示符后輸入“status;”命令,按【Enter】鍵執(zhí)行該命令,會顯示MySQL的狀態(tài)信息,如圖1-13所示。圖1-13查看MySQL的狀態(tài)信息05OPTION1.4試用MySQL的管理工具查看MySQL的版本信息以及連接用戶名在“mysql>”命令提示符后輸入“selectversion(),user();”命令,按【Enter】鍵執(zhí)行該命令,會顯示MySQL的版本信息以及連接用戶名,如圖1-14所示。06OPTION圖1-14查看MySQL的版本信息以及連接用戶名使用命令“quit;”退出MySQL服務器在命令提示符“mysql>”后輸入以下命令:07OPTIONquit;按【Enter】鍵執(zhí)行該命令,該命令成功運行后會顯示“Bye”。1.4試用MySQL的管理工具【任務描述】(1)啟動圖形管理工具NavicatforMySQL。(2)在NavicatforMySQL圖形化界面中建立并打開連接MyConn。(3)在NavicatforMySQL中查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫。(4)在NavicatforMySQL中查看數據庫“sys”中已有的數據表。(5)在NavicatforMySQL中刪除連接MyConn?!救蝿?-4】試用MySQL的圖形管理工具NavicatForMySQL1.4試用MySQL的管理工具【任務實施】01OPTION啟動NavicatforMySQL雙擊桌面上NavicatforMySQL的快捷方式,啟動圖形管理工具NavicatforMySQL。建立并打開連接MyConn在【NavicatforMySQL】窗口工具欄的【連接】下拉列表中選擇【MySQL】選項,如圖1-15所示。02OPTION圖1-15在【連接】下拉列表中選擇【MySQL】選項1.4試用MySQL的管理工具打開【MySQL-新建連接】對話框,在該對話框中設置連接參數,在【連接名】輸入框中輸入“MyConn”,然后分別輸入主機名或IP地址、端口、用戶名和密碼,如圖1-16所示。在【NavicatforMySQL】窗口的【文件】菜單中選擇【打開連接】命令,如圖1-17所示,即可打開MyConn連接。圖1-16在【MySQL-新建連接】對話框中設置參數圖1-17在【文件】菜單中選擇【打開連接】命令1.4試用MySQL的管理工具查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫MyConn連接打開后,【NavicatforMySQL】窗口左側便會顯示安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫,如圖1-18所示,一共有4個數據庫,與使用命令方式查看的結果一致。圖1-18在【NavicatforMySQL】窗口中查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫03OPTION1.4試用MySQL的管理工具查看數據庫sys中已有的數據表在【NavicatforMySQL】窗口左側的數據庫列表中雙擊sys數據庫,即可打開該數據庫,雙擊【表】節(jié)點即可查看該數據庫中已有的一個數據表,其名稱為“sys_config”,如圖1-19所示。圖1-19在【NavicatforMySQL】窗口中查看數據庫sys中已有的數據表04OPTION1.4試用MySQL的管理工具刪除連接MyConn在【NavicatforMySQL】窗口左側選擇創(chuàng)建的連接MyConn,然后在【文件】菜單中選擇【關閉連接】命令,如圖1-20所示,即可關閉MyConn連接。圖1-20在【文件】菜單中選擇【關閉連接】命令05OPTION1.4試用MySQL的管理工具在【NavicatforMySQL】窗口左側用鼠標右鍵單擊已被關閉的連接MyConn,在彈出的快捷菜單中選擇【刪除連接】命令,如圖1-21所示。此時會彈出【確認刪除】對話框,如圖1-22所示,在該對話框中單擊【刪除】按鈕即可刪除連接MyConn。圖1-21在被關閉連接MyConn的快捷菜單中選擇【刪除連接】命令圖1-22【確認刪除】對話框THANKS模塊2創(chuàng)建與操作MySQL數據庫MySQL數據庫應用與管理實戰(zhàn)2.1?創(chuàng)建數據庫數據庫技術主要研究如何科學地組織和存儲數據,以及如何高效地獲取和處理數據,它已廣泛應用于各個領域。數據庫是指長期存儲在計算機內的、有組織的、可共享的數據集合。數據庫可以看作一個存儲數據對象的容器,這些對象包括數據表、視圖、觸發(fā)器、存儲過程等,其中數據表是最基本的數據對象,是存放數據的實體。創(chuàng)建數據庫后,才能建立數據表及其他的數據對象。2.1.1?數據庫的基本概念數據(Data)是描述客觀事物的符號(可以是文字、數字、圖形、圖像等),經過數字化后存入計算機,是數據庫存儲的基本對象。1.數據2.數據庫數據庫(Database,DB)就是一個有結構的、集成的、可共享的、統(tǒng)一管理的數據集合。數據庫是一個有結構的數據集合,也就是說,數據是按一定的數據模型來組織的,數據模型可用數據結構來描述。在關系數據庫中,不僅存放著各種用戶數據,如與商品有關的數據、與客戶有關的數據、與訂單有關的數據等,還存放著與各個表結構定義相關的數據,這些數據通常稱為元數據。在關系數據庫中,不僅存放著各種用戶數據,如與商品有關的數據、與客戶有關的數據、與訂單有關的數據等,還存放著與各個表結構定義相關的數據,這些數據通常稱為元數據。2.1.1?數據庫的基本概念3.數據庫管理系統(tǒng)數據庫管理系統(tǒng)(DatabaseManagementSystem,DBMS)是一種用來管理數據庫的商品化軟件,用于建立、使用和維護數據庫,它對數據庫進行統(tǒng)一的管理和控制,以保證數據庫的安全性和完整性。DBMS主要提供以下功能通過DDL可以方便地定義數據庫中的各種對象。數據定義通過DML可以實現數據表中數據的基本操作數據操縱通過DCL可以控制什么情況下誰可以執(zhí)行什么樣的數據操作安全控制和并發(fā)控制DBMS提供了備份數據庫和恢復數據庫的功能數據庫備份與恢復2.1.1?數據庫的基本概念4.數據庫應用程序數據庫應用程序是使用某種程序設計語言,為實現某些特定功能而編寫的程序,如查詢程序、報表程序等。為終端用戶提供方便使用的可視化界面,終端用戶通過該界面輸入必要的數據應用程序接收終端用戶輸入的數據,經過加工處理后轉換成DBMS能夠識別的SQL語句傳給DBMS,由DBMS執(zhí)行該語句,負責從數據庫若干個數據表中找到符合查詢條件的數據將查詢結果返回給應用程序,應用程序將得到的結果顯示出來2.1.1?數據庫的基本概念5.數據庫用戶數據庫用戶是使用數據庫的人員,數據庫系統(tǒng)中的用戶一般有以下4類。應用程序員負責編寫數據庫應用程序,他們使用某種程序設計語言(如C#、Java等)來編寫應用程序。01數據庫管理員一類特殊的數據庫用戶,負責全面管理、控制、使用和維護數據庫,保證數據庫處于最佳工作狀態(tài)02數據管理員數據庫管理員的任務是創(chuàng)建實際的數據庫以及執(zhí)行數據管理員需要實施的各種安全控制措施,確保數據庫的安全,并且提供各種技術支持服務。03最終用戶也稱終端用戶或一般用戶,他們通過客戶端、屏幕終端或瀏覽器來訪問數據庫,或者通過數據庫產品提供的接口程序訪問數據庫。042.1.1?數據庫的基本概念6.數據庫系統(tǒng)數據庫系統(tǒng)(DatabaseSystem,DBS)是由數據庫及其管理軟件組成的系統(tǒng),是存儲介質、處理對象和管理系統(tǒng)的集合體,一般由數據、數據庫、數據庫管理系統(tǒng)、數據庫應用系統(tǒng)、用戶和硬件構成。數據是構成數據庫的主體,是數據庫系統(tǒng)管理的對象。數據庫是存放數據的倉庫,數據庫管理系統(tǒng)是數據庫系統(tǒng)的核心軟件,數據庫應用系統(tǒng)是數據庫管理系統(tǒng)支持下由用戶根據實際需要開發(fā)的應用程序。用戶包括應用程序員、數據庫管理員、數據管理員和最終用戶。硬件是數據庫系統(tǒng)的物理支撐,包括CPU、內存、硬盤及I/O設備等。2.1.1?數據庫的基本概念7.關系數據庫關系數據庫是一種建立在關系模型上的數據庫,是目前最受歡迎的數據庫管理系統(tǒng)。常用的關系數據庫有MySQL、SQLServer、Access、Oracle、DB2等。在關系數據庫中,關系模型就是一個二維表,因而一個關系數據庫就是若干個二維表的集合。8.系統(tǒng)數據庫MySQL主要包含information_schema、mysql、performance_schema、sys等系統(tǒng)數據庫,在創(chuàng)建任何數據庫之前,用戶可以使用相關命令查看系統(tǒng)數據庫,即在命令行窗口中登錄到MySQL服務器,然后在“mysql>”提示符后輸入如下命令:showdatabases;2.1.1?數據庫的基本概念按【Enter】鍵執(zhí)行該命令,會顯示安裝MySQL時系統(tǒng)自動創(chuàng)建的4個數據庫,如圖2-1所示。圖2-1?查看安裝MySQL時系統(tǒng)自動創(chuàng)建的數據庫2.1.1?數據庫的基本概念information_schema數據庫information_schema數據庫是一個虛擬數據庫,是查詢數據后,從其他數據庫獲取的相應信息。在information_schema中有數個只讀表,它們實際上是視圖,而不是基本表,因此,用戶將無法看到與之相關的任何文件。mysql數據庫mysql數據庫是MySQL的核心數據庫,主要負責存儲數據庫的用戶、權限設置、關鍵字等,還有其本身需要使用的控制和管理信息。performance_schema數據庫performance_schema數據庫主要用于收集數據庫服務器的性能參數,該數據庫里數據表的存儲引擎均為Performance_Schema,而用戶是不能創(chuàng)建存儲引擎為Performance_Schema的數據表的。sys數據庫sys數據庫中所有的數據源來自performance_schema數據庫,其目的是把performance_schema數據庫的復雜度降低,讓數據庫管理員能更好地閱讀這個數據庫里的內容,從而更快地了解數據庫的運行情況。2.1.2?認識創(chuàng)建MySQL數據庫的命令MySQL安裝與配置完成后,首先需要創(chuàng)建數據庫,這是使用MySQL各項功能的前提。默認情況下,只有系統(tǒng)管理員和具有創(chuàng)建數據庫角色權限的登錄賬戶的擁有者,才可以創(chuàng)建數據庫。在MySQL中,root用戶擁有最高權限。MySQL提供了創(chuàng)建數據庫的命令CreateDatabase,其語法格式如下:Create{Database|Schema}[ifnotexists]<數據庫名稱>[create_specification,…]其中,create_specification的可選項如下:[Default]CharacterSet<字符集名稱>|[Default]Collate<排序規(guī)則名稱>2.1.2?認識創(chuàng)建MySQL數據庫的命令

[]中的內容為可選項,其余為必須填寫的項;二者選其一的選項使用“|”分隔;多個選項或參數需列出前面一個選項或多個選項,“…”表示可有多個選項或參數。01CreateDatabase為創(chuàng)建數據庫的必需項,不能省略。02由于MySQL的數據存儲區(qū)將以文件夾形式表示MySQL數據庫,MySQL中不區(qū)分字母大小寫。03ifnotexists為可選項,用于在創(chuàng)建數據庫之前判斷即將創(chuàng)建的數據庫名是否存在。04create_specification用于指定數據庫的特性。Default用于指定默認值,CharacterSet子句用于指定默認的數據庫字符集,Collate子句用于指定默認的數據庫排序規(guī)則。05在MySQL中,每一條SQL語句都以半角分號“;”、“\g”或“\G”作為結束標志。062.1.2?認識創(chuàng)建MySQL數據庫的命令【任務描述】在NavicatforMySQL的圖形化環(huán)境中完成以下任務。(1)創(chuàng)建連接MallConn,并打開連接MallConn。(2)創(chuàng)建數據庫MallDB。(3)查看MallConn

連接中的數據庫。(4)打開新創(chuàng)建的數據庫MallDB?!救蝿?-1】使用NavicatforMySQL創(chuàng)建數據庫MallDB2.1.2?認識創(chuàng)建MySQL數據庫的命令【任務實施】圖2-2?在【文件】菜單中依次選擇【新建連接】-【MySQL】命令01OPTION創(chuàng)建連接MallConn,并打開連接MallConn(1)啟動圖形管理工具NavicatforMySQL。(2)建立連接MallConn。在【NavicatforMySQL】窗口中單擊【文件】菜單,在彈出的菜單中依次選擇【新建連接】-【MySQL】命令,如圖2-2所示。2.1.2?認識創(chuàng)建MySQL數據庫的命令圖2-3?在【MySQL-新建連接】對話框中設置參數打開【MySQL-新建連接】對話框,在該對話框中設置連接參數,在“連接名”輸入框中輸入“MallConn”,然后分別輸入主機名或IP地址、端口、用戶名和密碼,如圖2-3所示。輸入完成后單擊【測試連接】按鈕,打開顯示了“連接成功”提示信息的對話框,如圖2-4所示,表示連接創(chuàng)建成功,單擊【確定】按鈕保存所創(chuàng)建的連接。在【NavicatforMySQL】窗口左側就會出現連接MallConn。圖2-4“連接成功”提示信息對話框2.1.2?認識創(chuàng)建MySQL數據庫的命令圖2-5?在連接MallConn的快捷菜單中選擇【打開連接】命令(3)打開連接MallConn。在【NavicatforMySQL】窗口左側用鼠標右鍵單擊新創(chuàng)建的連接MallConn,在彈出的快捷菜單中選擇【打開連接】命令,如圖2-5所示,即可打開MallConn連接,顯示MallConn連接中的數據庫,如圖2-6所示。圖2-6?打開連接MallConn2.1.2?認識創(chuàng)建MySQL數據庫的命令圖2-7?選擇【新建數據庫】命令創(chuàng)建數據庫MallDB在【NavicatforMySQL】窗口左側用鼠標右鍵單擊打開的連接MallConn,在彈出的快捷菜單中選擇【新建數據庫】命令,如圖2-7所示,打開【新建數據庫】對話框。在【數據庫名】輸入框中輸入“MallDB”,在【字符集】下拉列表中選擇【utf8】選項,在【排序規(guī)則】下拉列表中選擇【utf8_general_ci】選項,如圖2-8所示。02OPTION圖2-8?【新建數據庫】對話框2.1.2?認識創(chuàng)建MySQL數據庫的命令在【新建數據庫】對話框中切換到【SQL預覽】選項卡,如圖2-9所示。圖2-9?【新建數據庫】對話框的【SQL預覽】選項卡在【SQL預覽】選項卡中可以看到,創(chuàng)建MySQL數據庫MallDB的語句如下:CREATEDATABASE'MallDB'CHARACTERSET'utf8'COLLATE'utf8_general_ci';2.1.2?認識創(chuàng)建MySQL數據庫的命令圖2-10?查看新數據庫MallDB03OPTION查看MallConn連接中的數據庫在【NavicatforMySQL】窗口中展開MallConn連接,可以看到新創(chuàng)建的數據庫MallDB,如圖2-10所示。2.1.2?認識創(chuàng)建MySQL數據庫的命令打開新創(chuàng)建的數據庫MallDB在【NavicatforMySQL】窗口左側用鼠標右鍵單擊新創(chuàng)建的數據庫“malldb”,在彈出的快捷菜單中選擇【打開數據庫】命令,如圖2-11所示。數據庫“malldb”的打開狀態(tài)如圖2-12所示。圖2-11?選擇【打開數據庫】命令04OPTION圖2-12?數據庫“malldb”的打開狀態(tài)2.1.2?認識創(chuàng)建MySQL數據庫的命令【任務描述】(1)創(chuàng)建一個名稱為StudentDB

的數據庫。(2)查看MySQL服務器主機上的數據庫?!救蝿?-2】在命名行中使用CreateDatabase語句創(chuàng)建數據庫2.1.2?認識創(chuàng)建MySQL數據庫的命令【任務實施】01OPTION創(chuàng)建數據庫StudentDB(1)登錄MySQL服務器。打開Windows命令行窗口,在命令提示符后輸入命令“mysql–uroot-p123456”,按【Enter】鍵后,若窗口中的命令提示符變?yōu)椤癿ysql>”,表示成功登錄MySQL服務器。(2)輸入創(chuàng)建數據庫的語句。在命令提示符“mysql>”后面輸入創(chuàng)建數據庫的語句:CreateDatabaseifnotexistsStudentDB;按【Enter】鍵,執(zhí)行結果如下:QueryOK,1rowaffected,1warning(0.47sec)2.1.2?認識創(chuàng)建MySQL數據庫的命令查看MySQL服務器主機上的數據庫在命令提示符“mysql>”后面輸入以下語句:ShowDatabases;按【Enter】鍵,執(zhí)行結果如圖2-13所示。從顯示的結果可以看出,已經存在StudentDB數據庫,表示該數據庫已創(chuàng)建成功。02OPTION圖2-13?查看MySQL服務器主機上的數據庫2.2?選擇與查看數據庫Use數據庫名稱;當登錄MySQL服務器后,可能有多個可以操作的數據庫,這時就需要選擇要操作的數據庫了。使用CreateDatabase語句創(chuàng)建數據庫之后,該數據庫不會自動成為當前數據庫,需要使用Use語句來指定。在MySQL中,對數據表進行操作之前,需要選擇該數據表所在的數據庫,選擇MySQL數據庫的命令的語法格式如下:2.2?選擇與查看數據庫【任務描述】(1)選擇當前數據庫為StudentDB。(2)查看數據庫StudentDB

使用的字符集。(3)查看當前使用的數據庫。(4)查看數據庫StudentDB

使用的端口。(5)查看數據庫文件的存放路徑。【任務2-3】在命名行中使用語句方式選擇與查看數據庫的相關信息2.2?選擇與查看數據庫【任務實施】01OPTION選擇當前數據庫為StudentDB在命令提示符“mysql>”后輸入以下語句:UseStudentDB;按【Enter】鍵后出現提示信息“Databasechanged”,表示數據庫選擇成功。2.2?選擇與查看數據庫查看數據庫StudentDB使用的字符集在命令提示符“mysql>”后輸入語句:ShowCreateDatabaseStudentDB;按【Enter】鍵后會顯示圖2-14所示的結果。02OPTION圖2-14?查看數據庫StudentDB使用的字符集2.2?選擇與查看數據庫03OPTION查看當前使用的數據庫在命令提示符“mysql>”后輸入語句“selectdatabase();”,然后按【Enter】鍵執(zhí)行該語句,查看當前使用的數據庫,結果如圖2-15所示。圖2-15?查看當前使用的數據庫查看數據庫StudentDB使用的端口04OPTION在命令提示符“mysql>”后輸入語句“showvariableslike'port';”,然后按【Enter】鍵執(zhí)行該語句,查看當前數據庫StudentDB使用的端口,結果如圖2-16所示。圖2-16?查看數據庫StudentDB使用的端口2.2?選擇與查看數據庫05OPTION查看數據庫文件的存放路徑在命令提示符“mysql>”后輸入語句“showvariableslike'%datadir%';”,然后按【Enter】鍵執(zhí)行該語句,查看數據庫文件的存放路徑,結果如圖2-17所示。圖2-17?查看數據庫文件的存放路徑2.3?修改數據庫Alter{Database|Schema}[數據庫名稱][alter_specification,…]數據庫創(chuàng)建成功后,如果需要修改數據庫的參數,可以使用AlterDatabase語句。其語法格式如下:其中,alter_specification的可選項如下:[Default]CharacterSet字符集名稱|[Default]Collate排序規(guī)則名稱2.3?修改數據庫【任務描述】(1)選擇StudentDB

為當前數據庫。(2)查看數據庫StudentDB

默認的字符集。(3)查看數據庫StudentDB

默認的排序規(guī)則。(4)修改數據庫StudentDB

的字符集為“gb2312”、排序規(guī)則為“gb2312_chinese_ci”。(5)查看數據庫StudentDB

修改后的字符集。(6)查看數據庫StudentDB

修改后的排序規(guī)則?!救蝿?-4】使用AlterDatabase語句修改數據庫2.3?修改數據庫【任務實施】01OPTION選擇StudentDB為當前數據庫在命令提示符“mysql>”后輸入語句“UseStudentDB;”,然后按【Enter】鍵執(zhí)行該語句,若提示“Databasechanged”,則表示數據庫選擇成功。查看數據庫StudentDB默認的字符集02OPTION在命令提示符“mysql>”后輸入語句“showvariableslike'character%';”,然后按【Enter】鍵執(zhí)行該語句,查看當前數據庫StudentDB默認的字符集,結果如圖2-18所示。圖2-18?查看當前數據庫StudentDB默認的字符集2.3?修改數據庫03OPTION查看數據庫StudentDB默認的排序規(guī)則在命令提示符“mysql>”后輸入語句“showvariableslike'collation%';”,然后按【Enter】鍵執(zhí)行該語句,查看當前數據庫StudentDB的排序規(guī)則,結果如圖2-19所示。修改數據庫StudentDB的默認字符集和排序規(guī)則04OPTION在命令提示符“mysql>”后輸入以下語句:圖2-19?查看數據庫StudentDB默認的排序規(guī)則AlterDatabaseStudentDBCharactersetgb2312Collategb2312_chinese_ci;按【Enter】鍵,出現“QueryOK,1rowaffected(0.48sec)”提示信息,表示修改成功。2.3?修改數據庫05OPTION查看數據庫StudentDB修改后的字符集在命令提示符“mysql>”后輸入語句“showvariableslike'character%';”,然后按【Enter】鍵執(zhí)行該語句,查看當前數據庫StudentDB修改后的字符集,結果如圖2-20所示。圖2-20?查看數據庫StudentDB修改后的字符集2.3?修改數據庫查看數據庫StudentDB修改后的排序規(guī)則在命令提示符“mysql>”后輸入語句“showvariableslike'collation%';”,然后按【Enter】鍵執(zhí)行該語句,查看當前數據庫StudentDB修改后的排序規(guī)則,結果如圖2-21所示。圖2-21?查看數據庫StudentDB修改后的排序規(guī)則06OPTION由于本任務第4步已將數據庫StudentDB的排序規(guī)則修改為“gb2312_chinese_ci”,所以圖2-21中的collation_database的“Value”為“gb2312_chinese_ci”。2.4?刪除數據庫DropDatabase[ifexists]<數據庫名>;刪除數據庫是指在數據庫系統(tǒng)中刪除已經存在的數據庫,即將已經存在的數據庫從磁盤中清除。刪除數據庫之后,數據庫中的數據也將被刪除,原來分配的空間將被收回。值得注意的是,刪除數據庫會永久刪除該數據庫中的所有數據表及數據。因此,在刪除數據庫時,應特別謹慎。在MySQL中,使用“DropDatabase”語句可刪除數據庫,其語法格式如下:若使用“ifexists”子句,則可避免刪除不存在的數據庫時出現錯誤提示信息;如果沒有使用“ifexists”子句,那么刪除的數據庫在MySQL中不存在時,系統(tǒng)就會顯示錯誤提示信息。2.4?刪除數據庫【任務描述】(1)查看MySQL當前連接中的數據庫。(2)刪除數據庫StudentDB。(3)在刪除數據庫StudentDB

前后分別查看MySQL當前連接中的數據庫?!救蝿?-5】使用DropDatabase語句刪除數據庫2.3?修改數據庫【任務實施】01OPTION查看MySQL當前連接中的數據庫在命令提示符“mysql>”后輸入“ShowDatabases;”語句,按【Enter】鍵,從運行結果中可以看出MySQL當前連接中包含了StudentDB數據庫。刪除數據庫StudentDB02OPTION在命令提示符“mysql>”后輸入以下語句:DropDatabaseStudentDB;按【Enter】鍵,出現“QueryOK,0rowsaffected(0.11sec)”提示信息,表示刪除成功。2.3?修改數據庫03OPTION刪除數據庫StudentDB后,再一次查看MySQL當前連接中的數據庫在命令提示符“mysql>”后輸入“ShowDatabases;”語句并按【Enter】鍵,結果如圖2-22所示,可以看出當前連接中數據庫StudentDB已不存在。圖2-22?刪除數據庫StudentDB后查看MySQL當前連接中的數據庫THANKS模塊3創(chuàng)建與完善MySQL數據表的結構MySQL數據庫應用與管理實戰(zhàn)3.1?網上商城數據庫的應用【任務描述】首先通過京東網上商城實例體驗數據庫的應用,對數據庫應用系統(tǒng)、數據庫管理系統(tǒng)、數據庫和數據表有一個直觀認識,這些數據庫應用的相關內容如表3-1所示,這些數據表事先都已設計完成,可直接通過應用程序對數據表中的數據進行存取操作?!救蝿?-1】通過網上商城體驗數據表的應用數據庫應用系統(tǒng)數據庫主要數據表典型用戶典型操作京東網上商城應用系統(tǒng)網上商城數據庫商品類型、商品信息、供應商、客戶、支付方式、提貨方式、購物車、訂單等客戶職員用戶注冊、用戶登錄、密碼修改、商品查詢、商品選購、下訂單、訂單查詢等3.1?網上商城數據庫的應用【任務實施】01OPTION查詢商品與瀏覽商品列表啟動瀏覽器,在地址欄中輸入京東網上商城的網址“”,按【Enter】鍵打開京東網上商城的首頁,“商品類型”數據表中的示例數據如表3-2所示。類型編號類型名稱父類編號類型編號類型名稱父類編號類型編號類型名稱父類編號t01家用電器t00t03電腦產品t00t0304游戲設備t03t0101電視機t01t0301電腦整機t03t0305網絡產品t03t0102空調t01t030101筆記本t0301t04辦公用品t00t0103洗衣機t01t030102游戲本t0301t05化妝洗護t00t0104冰箱t01t030103平板電腦t0301t06服飾鞋帽t00t0105廚衛(wèi)電器t01t030104臺式機t0301t07皮具箱包t00t0106生活電器t01t0302電腦配件t03t08汽車用品t00t02數碼產品t00t030201顯示器t0302t09母嬰玩具t00t0201通信設備t02t030202CPUt0302t10食品飲料t00t020101手機t0201t030203主板t0302t11醫(yī)藥保健t00t020102手機配件t0201t030204顯卡t0302t12禮品鮮花t00t020103對講機t0201t030205硬盤t0302t13圖書音像t00t020104固定電話t0201t030206內存t0302t1301圖書t13t0202攝影機t02t0303外設產品t03t1302音像t13t0203攝像機t02t030301鼠標t0303t1303電子書刊t13t0204數碼配件t02t030302鍵盤t0303t14家裝廚具t00t0205影音娛樂t02t030303U

盤t0303t15珠寶首飾t00t0206智能設備t02t030304移動硬盤t0303t16體育用品t00表3-2“商品類型”數據表中的示例數據3.1?網上商城數據庫的應用通過“高級搜索”方式搜索所需圖書02OPTION圖3-3?設置高級搜索條件啟動瀏覽器,在地址欄中輸入“京東網上商城高級搜索”的網址“/bookadv.html”,按【Enter】鍵,顯示“高級搜索”的網頁,在中部的【書名】輸入框中輸入“網頁設計與制作實戰(zhàn)”,在【作者】輸入框中輸入“陳承歡”,在【出版社】輸入框中輸入“人民郵電出版社”,搜索條件的設置如圖3-3所示。3.1?網上商城數據庫的應用圖3-5?圖書“HTML5+CSS3網頁設計與制作實戰(zhàn)”詳情頁面中的商品介紹03OPTION查看商品詳情在圖3-4所示的高級搜索結果頁面中選擇京東自營店鋪的圖書“HTML5+CSS3網頁設計與制作實戰(zhàn)”,單擊圖書圖片或圖書名稱,打開該圖書的詳情頁面,瀏覽該圖書的商品介紹,如圖3-5所示?!舅伎肌窟@里查詢到的圖書詳細數據是如何從后臺數據庫中獲取的?3.1?網上商城數據庫的應用圖3-6?用戶注冊頁面實現用戶注冊在京東網上商城首頁頂部單擊【免費注冊】超鏈接,打開用戶注冊頁面,選擇【個人用戶】選項卡,分別在用戶名、請設置密碼、請確認密碼、驗證手機、短信驗證碼和驗證碼等選項中輸入合適的內容,如圖3-6所示?!舅伎肌窟@里的用戶登錄對后臺數據庫中的“用戶”數據表進行了什么操作?04OPTION3.1?網上商城數據庫的應用實現用戶登錄圖3-7?用戶登錄頁面在京東網上商城首頁頂部單擊【請登錄】超鏈接,打開用戶登錄頁面,分別在用戶名和密碼輸入框中輸入已成功注冊的用戶名和密碼,如圖3-7所示。單擊【登錄】按鈕,登錄成功后,會在網頁頂部顯示已登錄用戶的名稱。【思考】這里的用戶登錄對后臺數據庫中的“用戶”數據表進行了什么操作?05OPTION3.1?網上商城數據庫的應用圖3-8?購物車頁面選購商品在商品瀏覽頁面中選中喜歡的商品后,單擊【加入購物車】按鈕,將所選商品添加到購物車中,已選購3本圖書的購物車頁面如圖3-8所示?!舅伎肌窟@些選購圖書的信息如何從后臺數據庫的“圖書信息”數據表中獲取,又如何添加到“購物車”數據表中?06OPTION3.1?網上商城數據庫的應用查看訂單中已訂購商品的信息圖3-9?已訂購商品的信息打開京東網上商城的“訂單”頁面,可以查看已訂購商品的全部信息,如圖3-9所示,這些信息以規(guī)范的列表形式顯示。【思考】已訂購商品的相關信息源自哪里?07OPTION3.1?網上商城數據庫的應用圖3-10?訂單信息查看訂單信息打開京東網上商城的“訂單”頁面,可以查看訂單信息,如圖3-10所示?!舅伎肌窟@些訂單信息源自哪里?08OPTION3.2?MySQL數據類型的特點與選擇所謂數值類型,就是用來存放數字型數據的,包括整數和小數。數值型數據是指字面值具有數學含義,能直接參與數值運算(例如求和、求平均值等)的數據,例如數量、單價、金額、比例等方面的數據。有些數據表面也為數字,卻不具有數學含義,參與數值運算后的結果也沒有數學含義,例如商品編號、郵政編碼、電話號碼、圖書的ISBN、學號、身份證號、銀行賬號等,這些數據雖然是由數字組成的,卻為字符串類型。1.數值類型3.2.1?MySQL數據類型及其特點3.2.1?MySQL數據類型及其特點整數類型整數類型主要用于存放整數數據,MySQL提供了多種整數類型,不同的數據類型有不同的取值范圍,可以存儲的值的范圍越大,其所需要的存儲空間也越大。MySQL支持在整數類型關鍵字后面的括號內指定整數值的顯示寬度,使用int(N)的形式指定顯示寬度,即指定能夠顯示的數字個數為N。小數類型MySQL中使用浮點數和定點數來表示小數。浮點類型有兩種:單精度浮點類型(float)和雙精度浮點類型(double)。定點類型只有一種:decimal。浮點類型和定點類型都可以使用(m,n)來表示,其中m表示總共的有效位數,也稱為精度;n表示小數的位數。3.2.1?MySQL數據類型及其特點字符串類型也是重要的數據類型之一,主要用于存儲字符串或文本信息。MySQL支持兩類字符串數據:文本字符串和二進制字符串。在MySQL數據庫中,常用的字符串類型主要包括char、varchar、binary、varbinary、text等,如表3-8所示。2.字符串類型變長字符串類型,如varchar、text等,其存儲需求取決于值的實際長度,而不是取決于類型支持的最大長度。名稱取值范圍說明char(n)最多255個字符用于聲明一個定長的數據,

n代表存儲的最大字符數varchar(n)最多65535個字符用于聲明一個變長的數據,

n代表存儲的最大字符數binary(n)最多255個字符用于聲明一個定長的二進制數據,

n代表存儲的最大字符數varbinary(n)最多65535個字符用于聲明一個變長的二進制數據,

n代表存儲的最大字符數tinytext最多255個字符用于聲明一個變長的數據text最多65535個字符用于聲明一個變長的數據mediumtext最多

16777215個字符用于聲明一個變長的數據longtext最多4294967295個字符用于聲明一個變長的數據表3-8MySQL中的不同字符串類型3.2.1?MySQL數據類型及其特點在數據庫中經常會存放一些日期時間數據,例如出生日期、出版日期等。在MySQL中,日期時間類型包括date、time、datetime、timestamp和year等,當只需記錄年份數據時,可以使用year類型,而沒有必要使用date類型,每一種日期時間類型都有取值范圍,當插入不合法的值時,系統(tǒng)會將“零”值插入字段中。3.日期時間類型名稱占用字節(jié)大小使用說明year1字節(jié)存儲年份值,其格式是YYYY,日期范圍為1901至2155,例如'2021'date3字節(jié)存儲日期值,其格式是YYYY-MM-DD,例如'2021-12-2'time3字節(jié)存儲時間值,其格式是HH:MM:SS,例如'12:25:36'datetime8字節(jié)存儲日期時間值,其格式是YYYY-MM-DDHH:MM:SS,例如'2021-12-222:06:44'timestamp4字節(jié)顯示格式與datetime相同,顯示寬度固定為19個字符,即YYYY-MM-DDHH:MM:SS,但其取值范圍小于datetime的取值范圍3.2.2?MySQL數據類型的選擇如果不需要表示小數部分,則使用整數類型;如果需要表示小數部分,則使用浮點類型。浮點類型包括float和double類型,如果要求存儲精度較高,應使用double類型,如果是精度較低的小數,則使用float類型。整數類型和浮點類型在長度一定的情況下,浮點類型能表示更大的數據范圍,其缺點是容易產生計算誤差,因此對精確度要求比較高時,建議使用decimal(定點)類型。decimal(定點)在MySQL中是以字符串形式存儲的,用于存儲精度要求相對較高的數據。浮點類型和定點類型MySQL針對不同種類的日期和時間數據,提供了很多種數據類型,例如year和time。只需要存儲年份,則使用year類型即可;如果只記錄時間,使用time類型即可。如果需要同時存儲日期和時間,則可以使用datetime或timestamp類型日期類型和時間類型3.2.2?MySQL數據類型的選擇char類型和varchar類型char類型char類型是固定長度char類型可能會浪費一些存儲空間,varchar類型則是按實際長度存儲,比較節(jié)省空間。對于char(n),如果存入的字符數小于n,則會自動用空格補于其后,char類型存儲的字符串末尾不能有空格。char類型數據的檢索速度要比varchar類型快。varchar類型varchar類型是可變長度,varchar會根據具體的長度來使用存儲空間,另外varchar需要用額外的1~2個字節(jié)存儲字符串長度(當字符串長度小于255時,用額外的1個字節(jié)來記錄長度;當字符串長度大于255時,用額外的2個字節(jié)來記錄長度)。varchar類型在查詢時不會刪除尾部空格。varchar占用“實際字符數+1”個字節(jié)(n≤255)或“實際字符數+2”個字節(jié)(n>255)。3.2.2?MySQL數據類型的選擇varchar類型和text類型varchar類型text類型varchar類型可以指定長度n存儲varchar類型數據占用“實際字符數+1”個字節(jié)(n≤255)或“實際字符數+2”個字節(jié)(n>255),存儲text類型數據占用“實際字符數+2”個字節(jié)Varchar類型的查詢速度快于text類型,因為varchar類型可直接創(chuàng)建索引text類型則不能指定長度text類型不能有默認值text類型創(chuàng)建索引要指定前多少個字符當保存或查詢text字段的值時,不會刪除尾部空格。3.2.2?MySQL數據類型的選擇【任務描述】MySQL中,char類型和varchar類型是兩種常用的字符串類型,char類型是固定長度,varchar類型是可變長度,如何進行合理選擇以發(fā)揮這兩種數據類型各自的優(yōu)勢?下面進行講解。【任務3-2】如何合理選擇char類型和varchar類型3.2.2?MySQL數據類型的選擇【任務實施】01OPTION從字符長度的角度考慮010203長度較短的字段,使用char類型,例如門牌號:101、201、301等。長度固定的字段,使用char類型,例如身份證號、手機號、郵政編碼等。字段的長度是否相近,如果某個字段其長度雖然比較長,但是其長度總是近似的,3.2.2?MySQL數據類型的選擇從碎片角度考慮02OPTION使用char類型時,存儲空間都是一次性分配的,從這個角度來講,不存在碎片的困擾。使用varchar類型時,因為存儲的長度是可變的,當數據長度在更改前后不一致時,就不可避免地會出現碎片的問題。使用varchar類型時,數據庫管理員要時不時地對碎片進行整理。3.2.2?MySQL數據類型的選擇即使使用varchar類型,也不能夠太過“慷慨”03OPTION雖然varchar類型可以自動根據長度調整存儲空間,但是varchar(100)和varchar(255)還是有區(qū)別的:假設它們都存儲了90個字符的數據,那么它們在磁盤上的存儲空間是相同的(根據實際字符長度來分配存儲空間)。但對內存來說,則不是這樣的,內存使用varchar類型中定義的長度(這里為100或255)的內存塊來保存值。3.3?分析并確定數據表的結構【任務3-3】分析并確定多個數據表的結構【任務描述】分析以下各個表中數據的字面特征,區(qū)分固定長度的字符串數據、可變長度的字符串數據、整數數據、固定精度和小數位數的數據和日期時間數據,并用分類列表的形式進行說明。“商品類型”數據表中的示例數據如表3-2所示。類型編號類型名稱父類編號類型編號類型名稱父類編號類型編號類型名稱父類編號t01家用電器t00t03電腦產品t00t0304游戲設備t03t0101電視機t01t0301電腦整機t03t0305網絡產品t03t0102空調t01t030101筆記本t0301t04辦公用品t00t0103洗衣機t01t030102游戲本t0301t05化妝洗護t00t0104冰箱t01t030103平板電腦t0301t06服飾鞋帽t00t0105廚衛(wèi)電器t01t030104臺式機t0301t07皮具箱包t00t0106生活電器t01t0302電腦配件t03t08汽車用品t00t02數碼產品t00t030201顯示器t0302t09母嬰玩具t00t0201通信設備t02t030202CPUt0302t10食品飲料t00t020101手機t0201t030203主板t0302t11醫(yī)藥保健t00t020102手機配件t0201t030204顯卡t0302t12禮品鮮花t00t020103對講機t0201t030205硬盤t0302t13圖書音像t00t020104固定電話t0201t030206內存t0302t1301圖書t13t0202攝影機t02t0303外設產品t03t1302音像t13t0203攝像機t02t030301鼠標t0303t1303電子書刊t13t0204數碼配件t02t030302鍵盤t0303t14家裝廚具t00t0205影音娛樂t02t030303U

盤t0303t15珠寶

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論