MySQL數(shù)據(jù)庫(kù)技術(shù).ppt
《MySQL數(shù)據(jù)庫(kù)技術(shù).ppt》由會(huì)員分享,可在線閱讀,更多相關(guān)《MySQL數(shù)據(jù)庫(kù)技術(shù).ppt(37頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
第5講 MySQL數(shù)據(jù)操作,課程:《PHP網(wǎng)站開發(fā)》,溫故知新,知識(shí)回顧 PHP瀏覽器數(shù)據(jù)傳遞和處理。 PHP表單和表單元素?cái)?shù)據(jù)運(yùn)用。 用戶注冊(cè)頁(yè)面的實(shí)現(xiàn)。 本節(jié)課知識(shí)要點(diǎn) phpMyAdmin管理使用MySQL數(shù)據(jù)庫(kù)。 MySQL的增刪改查基本SQL語(yǔ)句綜合操作。,項(xiàng)目導(dǎo)引:企業(yè)新聞發(fā)布系統(tǒng)數(shù)據(jù)庫(kù),我們思考幾個(gè)問題,新聞發(fā)布系統(tǒng)中的新聞信息存放在什么地方?用戶的賬戶信息和發(fā)布的新聞等內(nèi)容又到哪里去了?這些內(nèi)容又以什么形式存放呢? 以上內(nèi)容按照一定的格式存放在數(shù)據(jù)庫(kù)(Data Base)中,數(shù)據(jù)庫(kù)就是存放數(shù)據(jù)的倉(cāng)庫(kù),其可以快速、安全的存儲(chǔ)、處理大量的數(shù)據(jù)。 PHP開發(fā)網(wǎng)站使用數(shù)據(jù)庫(kù):PHP可以與MySQL、ACCESS、SQL Server、ORACAL等多種數(shù)據(jù)庫(kù)組合使用。 PHP開發(fā)最常用的數(shù)據(jù)庫(kù):在這些數(shù)據(jù)庫(kù)中,MySQL是世界上最為流行、開放源碼、完全網(wǎng)絡(luò)化、跨平臺(tái)的數(shù)據(jù)庫(kù),能夠滿足多數(shù)中小型企業(yè)的需求,絕大多數(shù)PHP網(wǎng)站采用MySQL作為網(wǎng)站的數(shù)據(jù)庫(kù)。,8-1 數(shù)據(jù)庫(kù)概述,1. 數(shù)據(jù)庫(kù) 數(shù)據(jù)庫(kù)是一種專門存儲(chǔ)信息和維護(hù)信息的容器,嚴(yán)格地說數(shù)據(jù)庫(kù)是“按照數(shù)據(jù)結(jié)構(gòu)來組織、存儲(chǔ)和管理信息的倉(cāng)庫(kù)”。 外觀上,數(shù)據(jù)庫(kù)中的二維表(簡(jiǎn)稱數(shù)據(jù)庫(kù)表)和電子表格Excel是相同的。數(shù)據(jù)庫(kù)表是由列和行構(gòu)成,數(shù)據(jù)庫(kù)表中的一列稱為一個(gè)字段,每個(gè)字段用于存儲(chǔ)某種數(shù)據(jù)類型的數(shù)據(jù);數(shù)據(jù)庫(kù)表中的一行稱為一條記錄,每條記錄包含表中的一條詳細(xì)信息。,,8-1 數(shù)據(jù)庫(kù)概述,2. 關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS) 關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS或relational database management system)就是管理關(guān)系數(shù)據(jù)庫(kù)的軟件系統(tǒng)。關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)主要功能就是創(chuàng)建關(guān)系數(shù)據(jù)庫(kù),并且在關(guān)系數(shù)據(jù)庫(kù)中創(chuàng)建各種數(shù)據(jù)庫(kù)對(duì)象(表、索引、視圖、存儲(chǔ)過程等)以及維護(hù)各個(gè)數(shù)據(jù)庫(kù)對(duì)象。對(duì)于初學(xué)者而言,關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)最重要的功能莫過于創(chuàng)建數(shù)據(jù)庫(kù)、創(chuàng)建數(shù)據(jù)庫(kù)表以及完成數(shù)據(jù)庫(kù)表記錄的添加、修改、刪除和查詢等操作。,,8-1 數(shù)據(jù)庫(kù)概述,3. 結(jié)構(gòu)化查詢語(yǔ)言SQL 結(jié)構(gòu)化查詢語(yǔ)言的英文全稱是structured query language,簡(jiǎn)稱SQL。SQL是一種應(yīng)用廣泛的關(guān)系數(shù)據(jù)庫(kù)語(yǔ)言,用于定義和管理關(guān)系數(shù)據(jù)庫(kù)中的各種對(duì)象(表、索引、視圖、存儲(chǔ)過程等),也可以用于查詢、修改和刪除數(shù)據(jù)庫(kù)表中的記錄。,,8-2 數(shù)據(jù)庫(kù)的設(shè)計(jì),0. 預(yù)備 數(shù)據(jù)庫(kù)的設(shè)計(jì)一般要從E-R模型開始,之后的步驟如下: 1.為每個(gè)實(shí)體建立一張表 2.為每個(gè)表選擇一個(gè)主鍵(建議添加一個(gè)沒有實(shí)際意義的字段作為主鍵) 3.增加外鍵以表示一對(duì)多關(guān)系 4.建立新表表示多對(duì)多關(guān)系 5.定義約束條件 6.評(píng)價(jià)關(guān)系的質(zhì)量,并進(jìn)行必要的改進(jìn)(關(guān)于范式等知識(shí)請(qǐng)參考其他數(shù)據(jù)庫(kù)書籍) 7.為每個(gè)字段選擇合適的數(shù)據(jù)類型和取值范圍,,8-2 數(shù)據(jù)庫(kù)的設(shè)計(jì),1. E-R模型 E-R(Entity-Relationship)模型即實(shí)體-關(guān)系模型主要用于定義數(shù)據(jù)的存儲(chǔ)需求,該模型已經(jīng)廣泛用于關(guān)系數(shù)據(jù)庫(kù)設(shè)計(jì)中。E-R模型由實(shí)體、屬性和關(guān)系三個(gè)基本要素構(gòu)成。,,8-2 數(shù)據(jù)庫(kù)的設(shè)計(jì),2. 主鍵(Primary Key) 數(shù)據(jù)庫(kù)表要求表中的每一行記錄都必須是唯一的,即在同一張表中不允許出現(xiàn)完全相同的兩條記錄。在設(shè)計(jì)數(shù)據(jù)庫(kù)時(shí),為了保證記錄的“唯一性”,最為普遍、最為推薦的做法是為表定義一個(gè)主鍵(primary key)。數(shù)據(jù)庫(kù)表中主鍵有以下兩個(gè)特征: 1.表的主鍵可以由一個(gè)字段構(gòu)成,也可以由多個(gè)字段構(gòu)成(這種情況稱為復(fù)合主鍵)。 2.?dāng)?shù)據(jù)庫(kù)表中主鍵的值具有唯一性且不能取空值(NULL),當(dāng)數(shù)據(jù)庫(kù)表中的主鍵由多個(gè)字段構(gòu)成時(shí),每個(gè)字段的值不能取NULL值。,,8-2 數(shù)據(jù)庫(kù)的設(shè)計(jì),3. 實(shí)體間的關(guān)系與外鍵(Foreign Key) 班級(jí)實(shí)體和班主任實(shí)體之間為一對(duì)一關(guān)系,班級(jí)實(shí)體和學(xué)生實(shí)體之間為一對(duì)多關(guān)系,學(xué)生實(shí)體和課程實(shí)體之間為多對(duì)多關(guān)系。實(shí)體間的關(guān)系可以通過外鍵來表示。如果表A中的一個(gè)字段a對(duì)應(yīng)于表B的主鍵b,則字段a稱為表A的外鍵。此時(shí)存儲(chǔ)在表A中字段a的值,同時(shí)這個(gè)字段值也是表B主鍵b的值。,,8-2 數(shù)據(jù)庫(kù)的設(shè)計(jì),4. 約束(constraint) 常用的約束條件有六種: 主鍵(primary key)約束 外鍵(foreign key)約束 唯一性(unique)約束 默認(rèn)值(default)約束 非空(not NULL)約束 檢查(check)約束,,8.3 數(shù)據(jù)表設(shè)計(jì),1.數(shù)據(jù)表 一個(gè)數(shù)據(jù)庫(kù)中可以有多個(gè)數(shù)據(jù)表,每個(gè)數(shù)據(jù)表的名稱必須是唯一的,表中每個(gè)字段的名稱也必須是唯一的,每個(gè)字段都有對(duì)應(yīng)的數(shù)據(jù)類型和取值范圍。 二維表中能唯一區(qū)分、確定不同記錄的屬性或?qū)傩越M合,稱為該表的主鍵。主鍵具有唯一性和非空性。例如:圖書編號(hào)為圖書表的主鍵,用戶編號(hào)為用戶表的主鍵。 在圖書類別表中,typeid(類別編號(hào))字段為主鍵,在圖書表中也有typeid(類別編號(hào))字段,并且與圖書類別表中的typeid(類別編號(hào))字段是對(duì)應(yīng)關(guān)系。這里我們把typeid(類別編號(hào))字段稱為圖書類別表的主鍵,圖書表的外鍵。,8.3 數(shù)據(jù)表設(shè)計(jì),2.數(shù)據(jù)類型 (1)數(shù)值類型 TINYINT:占1個(gè)字節(jié),有符號(hào)數(shù)字的范圍是-128到127,無(wú)符號(hào)的數(shù)字范圍是0到255。 SMALLINT:占2個(gè)字節(jié),有符號(hào)數(shù)字的范圍是-32768到32767,無(wú)符號(hào)數(shù)字的范圍是0到65535。 MEDIUMINT:占3個(gè)字節(jié),有符號(hào)數(shù)字的范圍是-8388608到8388607,無(wú)符號(hào)數(shù)字的范圍是0到16777215。 INT:占4個(gè)字節(jié),有符號(hào)數(shù)字的范圍是-2147483648到2147483647,無(wú)符號(hào)數(shù)字的范圍是0到4294967295。 BIGINT:占8個(gè)字節(jié),有符號(hào)數(shù)字的范圍是-9223372036854775808到9223372036854775807,無(wú)符號(hào)數(shù)字的范圍是0到18446744073709551615。,8.3 數(shù)據(jù)表設(shè)計(jì),FLOAT[(M,D)]:占4個(gè)字節(jié),不能無(wú)符號(hào),允許的值是-3.402823466E+38到-1.175494351E-38,0和1.175494351E-38到3.402823466E+38。M是顯示寬度,D是小數(shù)的位數(shù)。 DOUBLE[(M,D)]:占8個(gè)字節(jié),不能無(wú)符號(hào),允許的值是-1.7976931348623157E+308到-2.2250738585072014E-308、0和2.2250738585072014E-308到1.7976931348623157E+308。M是顯示寬度,D是小數(shù)位數(shù)。 DECIMAL[(M[,D])]:一個(gè)未壓縮(unpack)的浮點(diǎn)數(shù)字,“未壓縮”意味著數(shù)字作為一個(gè)字符串被存儲(chǔ),值的每一位使用一個(gè)字符。小數(shù)點(diǎn),并且對(duì)于負(fù)數(shù),“-”符號(hào)不在M中計(jì)算。如果D是0,值將沒有小數(shù)點(diǎn)或小數(shù)部分。DECIMAL值的最大范圍與DOUBLE相同,但是對(duì)一個(gè)給定的DECIMAL列,實(shí)際的范圍可以通過M和D的選擇被限制。如果D被省略,它被設(shè)置為0。如果M被省掉,它被設(shè)置為10。,8.3 數(shù)據(jù)表設(shè)計(jì),(2)日期和時(shí)間類型 DATE:日期型,占3個(gè)字節(jié),支持的范圍是1000-01-01到9999-12-31。MySQL以YYYY-MM-DD格式來顯示DATE值,但是允許使用字符串或數(shù)字把值賦給DATE列。 DATETIME:日期和時(shí)間組合型,占8個(gè)字節(jié),支持的范圍是1000-01-01 00:00:00到9999-12-31 23:59:59。MySQL以YYYY-MM-DD HH:MM:SS格式來顯示DATETIME值,但是允許使用字符串或數(shù)字把值賦給DATETIME的列。 TIMESTAMP:時(shí)間戳,占4個(gè)字節(jié),范圍是1970-01-01 00:00:00到2037年的某時(shí)。 TIME:時(shí)間型,占3個(gè)字節(jié),范圍是-838:59:59到838:59:59。MySQL以HH:MM:SS格式來顯示TIME值,但是允許使用字符串或數(shù)字把值賦給TIME列。 YEAR[(2|4)]:2或4位數(shù)字格式的年(缺省是4位),占1個(gè)字節(jié),允許的值是1901到2155,如果使用2位,1970-2069(70-69)。MySQL以YYYY格式來顯示YEAR值,但是允許把使用字符串或數(shù)字值賦給YEAR列。,8.3 數(shù)據(jù)表設(shè)計(jì),(3)字符串(字符)類型 CHAR(M):定長(zhǎng)字符串,當(dāng)存儲(chǔ)時(shí),總是用空格填滿右邊到指定的長(zhǎng)度。M的范圍是0~255個(gè)字符。 VARCHAR(M):變長(zhǎng)字符串,當(dāng)值被存儲(chǔ)時(shí),尾部的空格被刪除。M的范圍是0~255個(gè)字符。 BLOB:二進(jìn)制對(duì)象,可以保存圖片、聲音等二進(jìn)制數(shù)據(jù)。BLOB類型根據(jù)其容納值的長(zhǎng)度不同,分為TINYBLOB(最大長(zhǎng)度255字節(jié))、BLOB(最大長(zhǎng)度65535字節(jié))、MEDIUMBLOB(最大長(zhǎng)度16777215字節(jié))和LONGBLOB(最大長(zhǎng)度4GB字節(jié))類型。 TEXT:文本,用來保存字符數(shù)據(jù)。TEXT類型根據(jù)其容納值的長(zhǎng)度不同,分為TINYTEXT(最大長(zhǎng)度255字節(jié))、TEXT(最大長(zhǎng)度65535字節(jié))、MEDIUMTEXT(最大長(zhǎng)度16777215字節(jié))和LONGTEXT(最大長(zhǎng)度4GB字節(jié))類型。 ENUM(value1,value2,.):枚舉,一個(gè)僅有一個(gè)值的字符串對(duì)象,這個(gè)值選自值列表value1、value2, .,或NULL。值列表最多能有65535不同的值。 SET(value1,value2,.) :集合,有零個(gè)或多個(gè)值的一個(gè)字符串對(duì)象,其中每一個(gè)必須從值列表value1、 value2、.選出。一個(gè)SET最多能有64個(gè)成員。,8.3 數(shù)據(jù)表設(shè)計(jì),3. 新聞發(fā)布系統(tǒng)數(shù)據(jù)庫(kù)設(shè)計(jì) 依據(jù)“新聞發(fā)布系統(tǒng)”的需求分析,網(wǎng)站主要包含tb_users(用戶表)、tb_news(新聞信息表)、tb_category(新聞?lì)悇e表)等。,8.4項(xiàng)目實(shí)施,通過前面的學(xué)習(xí)我們知道商城數(shù)據(jù)庫(kù)都有哪些表組成了,那么我們?cè)撊绾蝿?chuàng)建數(shù)據(jù)庫(kù)呢? 對(duì)MySQL數(shù)據(jù)庫(kù)的創(chuàng)建管理主要包括兩種方式,一種是通過圖形管理工具創(chuàng)建管理數(shù)據(jù)庫(kù),第二種是通過MySQL的客戶端程序創(chuàng)建管理數(shù)據(jù)庫(kù),客戶端程序的管理是通過SQL語(yǔ)句來實(shí)現(xiàn)。 MySQL常用的圖形化管理工具有phpMyAdmin、MySQLDumper、Navicat、MySQL GUI Tools、MySQL ODBC Connector等,這些工具需要安裝之后才能使用。 phpMyAdmin是一個(gè)用PHP開發(fā)的基于Web方式的MySQL管理工具,它的官方網(wǎng)站是。PHP集成開發(fā)環(huán)境WampServer中包含有phpMyAdmin組件。,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),,圖4?4 phpMyAdmin主界面,1.創(chuàng)建數(shù)據(jù)庫(kù) 在主界面中可以創(chuàng)建數(shù)據(jù)庫(kù),創(chuàng)建數(shù)據(jù)庫(kù)需要指定數(shù)據(jù)庫(kù)的名字和編碼方式,“新聞發(fā)布系統(tǒng)” 數(shù)據(jù)庫(kù)名稱為db_news,采用utf-8的編碼方式,如圖4?5所示。單擊“創(chuàng)建”按鈕完成數(shù)據(jù)庫(kù)的創(chuàng)建。,圖4?5 創(chuàng)建數(shù)據(jù)庫(kù),8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),2.創(chuàng)建數(shù)據(jù)表 數(shù)據(jù)庫(kù)創(chuàng)建后,進(jìn)入創(chuàng)建數(shù)據(jù)表的頁(yè)面,如圖4?6所示。在此,輸入數(shù)據(jù)表的名稱和字段數(shù)量,例如輸入表名為“tb_type”,字段數(shù)量為“3”。,圖4?6 創(chuàng)建數(shù)據(jù)表,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),單擊“執(zhí)行”按鈕,進(jìn)入創(chuàng)建數(shù)據(jù)表字段的界面,如圖4?7所示。在此可以設(shè)置字段的字段名稱、數(shù)據(jù)類型、長(zhǎng)度值、默認(rèn)值、整理編碼方式、屬性、是否為空(Null)、索引和自動(dòng)增長(zhǎng)(A_I)等內(nèi)容。設(shè)置完畢后,單擊“保存”按鈕,完成數(shù)據(jù)表結(jié)構(gòu)的創(chuàng)建。,圖4?7 設(shè)置表字段,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),數(shù)據(jù)表創(chuàng)建成功后,進(jìn)入數(shù)據(jù)表“結(jié)構(gòu)”頁(yè)面,如圖4?8所示,在這里可以修改表結(jié)構(gòu),如添加字段、刪除字段、設(shè)置主鍵、索引、修改字段名稱等。單擊導(dǎo)航中“刪除”按鈕,可以將數(shù)據(jù)表刪除。,圖4?8 管理數(shù)據(jù)表,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),3.添加數(shù)據(jù) 在數(shù)據(jù)表頁(yè)面,單擊“插入”按鈕,進(jìn)入添加數(shù)據(jù)頁(yè)面,如圖4?9所示,輸入“值”后,單擊“執(zhí)行”按鈕,即可將數(shù)據(jù)添加到數(shù)據(jù)表中。,圖4?9 添加數(shù)據(jù),8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),4.運(yùn)行SQL語(yǔ)句 在數(shù)據(jù)表頁(yè)面,單擊“插入”按鈕,進(jìn)入添加數(shù)據(jù)頁(yè)面,如圖4?9所示,輸入“值”后,單擊“執(zhí)行”按鈕,即可將數(shù)據(jù)添加到數(shù)據(jù)表中。,圖4?10 SQL語(yǔ)句執(zhí)行界面,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),5.數(shù)據(jù)庫(kù)的備份 對(duì)于數(shù)據(jù)庫(kù)的管理經(jīng)常需要備份和還原,在phpMyAdmin中我們通過導(dǎo)出、導(dǎo)入方式備份還原數(shù)據(jù)庫(kù)。選擇db_shop數(shù)據(jù),單擊導(dǎo)航欄中的“導(dǎo)出”按鈕,進(jìn)入導(dǎo)出界面,如圖4?11所示。在此,我們可以選擇導(dǎo)出的數(shù)據(jù)表,選擇導(dǎo)出數(shù)據(jù)表的具體內(nèi)容和導(dǎo)出的保存形式,在頁(yè)面下方指定保存的文件名,最后,將SQL文件保存到磁盤上,完成數(shù)據(jù)備份。,圖4?11數(shù)據(jù)導(dǎo)出界面,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),6.?dāng)?shù)據(jù)庫(kù)的還原 單擊導(dǎo)航欄中的“Import”按鈕,進(jìn)入SQL文件導(dǎo)入界面,如圖4?12所示。單擊“瀏覽”按鈕,選擇需要導(dǎo)入的SQL腳本文件,然后單擊“執(zhí)行”按鈕,系統(tǒng)將執(zhí)行SQL文件中的SQL命令,完成數(shù)據(jù)還原。 數(shù)據(jù)庫(kù)創(chuàng)建好之后,會(huì)保存在MySQL安裝路徑下的data文件中,每一個(gè)數(shù)據(jù)庫(kù)對(duì)應(yīng)一個(gè)文件夾,通過文件夾操作也可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的備份還原。 掌握phpMyAdmin的基本操作后,使用phpMyAdmin完成商城數(shù)據(jù)庫(kù)及數(shù)據(jù)表的創(chuàng)建。,圖4?12數(shù)據(jù)導(dǎo)入部分界面,8.4.1 phpMyAdmin數(shù)據(jù)庫(kù),實(shí)驗(yàn)任務(wù)1:phpMyAdmin數(shù)據(jù)庫(kù)綜合練習(xí),8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理 MySQL是基于客戶機(jī)/服務(wù)器結(jié)構(gòu)的數(shù)據(jù)庫(kù)管理系統(tǒng),通過客戶機(jī)連接服務(wù)器成功后,再通過必要的操作指令對(duì)其進(jìn)行操作,這種數(shù)據(jù)庫(kù)操作指令被稱為SQL(Structured Query Language)語(yǔ)言,即結(jié)構(gòu)化查詢語(yǔ)言。SQL語(yǔ)言結(jié)構(gòu)簡(jiǎn)潔,功能強(qiáng)大,自IBM公司1981年推出以來,SQL語(yǔ)言得到了廣泛的應(yīng)用,目前MySQL、Oracle、SQLServer、Sybase、DB2等數(shù)據(jù)庫(kù)都采用SQL作為查詢語(yǔ)言。SQL語(yǔ)言包含以下四部分: 數(shù)據(jù)定義語(yǔ)言(DDL):用于定義和管理數(shù)據(jù)庫(kù)對(duì)象,包括數(shù)據(jù)庫(kù)、數(shù)據(jù)表、索引、視圖等。例如:create、drop、alter等語(yǔ)句; 數(shù)據(jù)操作語(yǔ)言(DML):用于操作數(shù)據(jù)庫(kù)對(duì)象中所包含的具體數(shù)據(jù)。例如:insert、update、delete語(yǔ)句; 數(shù)據(jù)查詢語(yǔ)言(DQL):用于查詢數(shù)據(jù)庫(kù)對(duì)象中的所包含的數(shù)據(jù)。例如:select語(yǔ)句; 數(shù)據(jù)控制語(yǔ)言(DCL):用來管理數(shù)據(jù)庫(kù)的語(yǔ)言,包含管理權(quán)限及數(shù)據(jù)更改。例如:grant、revoke、commit、rollback等語(yǔ)句。,課堂引例: 利用DML或DQL語(yǔ)言寫出下面幾個(gè)功能要求的SQL語(yǔ)句。 1、向admin表加入一條記錄(admin100,123456,admin100@,1)。 2、修改admin表中username為admin的密碼更改為123456。 3、刪除admin表中一條記錄(level=0)。 4、查詢輸出admin表中所有記錄,根據(jù)username倒敘排序。,8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,安裝Navicat for MySQL,8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,數(shù)據(jù)操作和數(shù)據(jù)查詢語(yǔ)言 幾個(gè)簡(jiǎn)單的基本的sql語(yǔ)句 選擇:select * from table1 where 范圍 插入:insert into table1(field1,field2) values(value1,value2) 刪除:delete from table1 where 范圍 更新:update table1 set field1=value1 where 范圍 查找:select * from table1 where field1 like ’%value1%’ —like的語(yǔ)法很精妙,查資料! 排序:select * from table1 order by field1,field2 [desc] 總數(shù):select count * as totalcount from table1 求和:select sum(field1) as sumvalue from table1 平均:select avg(field1) as avgvalue from table1 最大:select max(field1) as maxvalue from table1 最?。簊elect min(field1) as minvalue from table1,(2) 添加記錄 向表中添加一條或多條數(shù)據(jù)記錄,使用INSERT.VALUES語(yǔ)句實(shí)現(xiàn),其語(yǔ)法格式如下: INSERT [INTO] tbl_name SET col_name=expression, col_name=expression, . INSERT [INTO] tbl_name[(col_name,.)] VALUES (expression,.),(.),. 【例4-7】為tb_type和tb_book表添加記錄。注:圖書表的photo字段保存的是圖片的完整路徑。 6.修改數(shù)據(jù) 修改數(shù)據(jù)表中的數(shù)據(jù)可以使用UPDATE語(yǔ)句,其語(yǔ)法格式如下: UPDATE tbl_name SET col_name1=expr1,col_name2=expr2,. [WHERE where_definition] 需要注意的是,當(dāng)沒有WHERE子句指定修改條件時(shí),則表中所有記錄的指定列都被修改。 【例4-8】將tb_type表中類別名稱為“教育類”的名字修改為“高職教育類”。,8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,7.刪除數(shù)據(jù) 將數(shù)據(jù)表中數(shù)據(jù)刪除的語(yǔ)句是DELETE,其語(yǔ)法格式為: DELETE FROM tbl_name [WHERE where_definition] 需要注意的是,當(dāng)沒有WHERE子句指定刪除條件時(shí),則刪除表中所有記錄。 【例4-9】刪除tb_type 表中類別名稱為“高職教育類”的記錄。 4.4.4 SQL之?dāng)?shù)據(jù)庫(kù)的查詢管理 數(shù)據(jù)查詢是數(shù)據(jù)庫(kù)的核心操作,用戶可以通過查詢獲得所需要的數(shù)據(jù)。查詢操作可以通過SELECT語(yǔ)句實(shí)現(xiàn),該語(yǔ)句在執(zhí)行時(shí)會(huì)根據(jù)要求從一個(gè)或多個(gè)數(shù)據(jù)表中選取特定的行和列,形成一個(gè)臨時(shí)表傳送給用戶。 其中: select_expression:描述結(jié)果集的列,列與列之間用逗號(hào)分隔; FROM table_list:用于指定產(chǎn)生查詢結(jié)果集的數(shù)據(jù)來源的表或視圖的名稱; WHERE where_definition:用于指定所檢索的數(shù)據(jù)應(yīng)該滿足的條件; GROUP BY col_name:用于分組統(tǒng)計(jì)時(shí)指定分組的條件;,8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,HAVING where_definition:與GROUP BY子句一起使用,用于對(duì)分組統(tǒng)計(jì)的結(jié)果設(shè)置條件,進(jìn)行組數(shù)據(jù)選擇; ORDER BY sorting_columns [ASC|DESC]:指定在SELECT語(yǔ)句返回的列中所使用的排序順序;ASC和DESC用于指定行是按升序還是按降序排列; LIMIT[offset,] rows:用來限制SELECT語(yǔ)句返回的行數(shù)。 需要注意,SELECT語(yǔ)句中的子句必須按以上語(yǔ)法格式的順序給出,例如,HAVING子句必須在GROUP BY子句之后,ORDER BY子句之前。 1.基本查詢 2.條件查詢 3.排序查詢 4.統(tǒng)計(jì)查詢 5.連接查詢 6.子查詢 7.限制返回行數(shù),8.4.2 SQL之?dāng)?shù)據(jù)庫(kù)的創(chuàng)建與管理,實(shí)驗(yàn)任務(wù)2:phpMyAdmin數(shù)據(jù)庫(kù)綜合練習(xí),課堂小結(jié),理解MySQL數(shù)據(jù)庫(kù)的創(chuàng)建與管理、數(shù)據(jù)類型及數(shù)據(jù)表的創(chuàng)建與管理。 掌握數(shù)據(jù)添加、修改、刪除和查詢等SQL操作。 掌握phpMyAdmin數(shù)據(jù)管理平臺(tái)和Navicat for MySQL 的基本使用方法。,- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
9.9 積分
下載 |
- 配套講稿:
如PPT文件的首頁(yè)顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國(guó)旗、國(guó)徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- MySQL 數(shù)據(jù)庫(kù)技術(shù)
鏈接地址:http://www.820124.com/p-2585804.html