版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、PHP 動態(tài)網(wǎng)站程序設(shè)計(第2版) 唐四薪 主編 人民郵電出版社ISBN:978-7-115-50524-8 2020年3月第6章 MySQL數(shù)據(jù)庫 MySQL簡介MySQL是一種流行的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)軟件。MySQL具有體積小,速度快、功能齊全,并且完全免費等特點一般中小型PHP網(wǎng)站的開發(fā)都選擇使用MySQL作為網(wǎng)站數(shù)據(jù)庫 6.1 數(shù)據(jù)庫的基本知識數(shù)據(jù)庫的相關(guān)概念數(shù)據(jù)庫(DB):按照一定數(shù)據(jù)模型組織、存儲在一起的,能為多個用戶共享的,與應(yīng)用程序相對獨立、相互關(guān)聯(lián)的數(shù)據(jù)集合 數(shù)據(jù)庫管理系統(tǒng)(Database Management System,簡稱DBMS)是位于用戶與操作系統(tǒng)之間的一系列
2、以統(tǒng)一的方式管理和維護數(shù)據(jù)庫中數(shù)據(jù)的軟件集合。數(shù)據(jù)庫系統(tǒng)(Database System,簡稱DBS)是指在計算機系統(tǒng)中引入數(shù)據(jù)庫后的系統(tǒng)。什么是數(shù)據(jù)數(shù)據(jù)是指有意義的字符,如文本、圖像、聲音等等數(shù)據(jù)不是指數(shù)字數(shù)據(jù)庫應(yīng)該是存放數(shù)據(jù)的倉庫?三者的關(guān)系數(shù)據(jù)庫系統(tǒng)DBS數(shù)據(jù)庫DB數(shù)據(jù)庫管理系統(tǒng)DBMS關(guān)系與數(shù)據(jù)表目前絕大多數(shù)數(shù)據(jù)庫采用的數(shù)據(jù)模型都是關(guān)系數(shù)據(jù)模型所謂“關(guān)系”簡單地說就是表。 數(shù)據(jù)表的一些基本概念 關(guān)系是規(guī)范化了的表1)沒有兩個元組在各個屬性上的值是完全相同的2)行的次序無關(guān)3)列的次序無關(guān)關(guān)系是一個元數(shù)為k的元組的集合,集合中的元素為元組數(shù)據(jù)庫是多個表的集合有時必須對數(shù)據(jù)表進行分解學(xué)生表
3、學(xué)院表課程表成績表學(xué)號姓名性別學(xué)院號學(xué)院號學(xué)院院長課程號課程名任課教師學(xué)號課程號成績常見的數(shù)據(jù)庫管理系統(tǒng)PHP通常搭配MySQLASP通常搭配 Access:配置簡單、移植方便SQL Server:具有存儲過程或觸發(fā)器等高級功能JSP通常搭配SQL ServerOracle6.1.2 使用phpMyAdminphpMyAdmin:MySQL數(shù)據(jù)庫的圖形化界面軟件1.創(chuàng)建數(shù)據(jù)庫 2. 新建和維護表新建表 保存表 在表中輸入數(shù)據(jù) 修改數(shù)據(jù)表的設(shè)計3.修改表名或復(fù)制表 MySQL中的數(shù)據(jù)類型數(shù)據(jù)類型主要有以下幾種:INT:用于存儲標準的整數(shù),占4個字節(jié) 。VARCHAR:是一種可變長度的字符串類型
4、CHAR:是一種固定長度的字符串類型 TEXT:用于存儲比較長的字符串,或二進制數(shù)據(jù) 。BOOL:即布爾型數(shù)據(jù) 。DATETIME:保存日期/時間的數(shù)據(jù)類型,不能指定長度 。auto_increment(自動遞增) :可以自動遞增或隨機產(chǎn)生一個整數(shù),常用來自動產(chǎn)生唯一編號6.1.3 SQL語言簡介SQL(Structured Query Language)語言,即結(jié)構(gòu)化查詢語言,包括:Select語句查詢記錄;Insert語句添加記錄;Delete語句刪除記錄;Update語句更新記錄。Create語句創(chuàng)建表或數(shù)據(jù)庫 SQL語言6.1.4 Select語句Select語句用來實現(xiàn)對數(shù)據(jù)庫的查詢
5、。就是可以從數(shù)據(jù)庫的相關(guān)表中查詢符合特定條件的記錄(行)或字段(列)。語法如下:Select 字段列表 From 表 Where 條件 Order By 字段 Group By 字段 limit s, n 1)從哪些表中查詢 即:from 后的一項2)要查詢哪些列 即:select 后的一項3) 要查詢的條件 即: where 后的一項常用的Select語句示例 1)選取數(shù)據(jù)表中的全部數(shù)據(jù)Select * from lyb2)選取指定字段的數(shù)據(jù)(即選取表中的幾列)Select author, title from lyb3)只選取前5條記錄Select * from lyb limit 5Se
6、lect * from lyb limit 0, 5 4)選取第6到15條記錄 Select * from lyb limit 5, 10 一些常用的Select語句的例子(4)選取滿足條件的記錄Select * from lyb where ID5Select * from lyb where author=張三Select author, title from lyb where ID Between 2 And 5 Select * from lyb where ID in (1, 3, 5) 字符串兩邊要加單引號選取連續(xù)值選取離散值模糊查詢的例子選取滿足模糊條件的記錄查詢所有姓名中有“
7、芬”字的人:Select * From lyb Where author like %芬%姓名以張開頭的人Select * From lyb Where author like 張% Select * From lyb Where author like 唐_ 在Access中直接寫查詢語句時,“%”需換成“ * ”,“_”需換成“?”。 用Order By子句對查詢結(jié)果進行排序 Order By子句:將查詢結(jié)果按某種順序排序按作者名升序排列Select * From lyb order by author ASC按ID字段的降序排列Select * From lyb order by id
8、DESC4. 匯總查詢聚合函數(shù)Select語句中提供了Count、Avg、Sum、Max和Min共5個聚合函數(shù)查詢表中總共有多少條記錄: Select count(*) From lyb下面的語句將查詢所有記錄的ID值的平均值,之和和最大的ID號。 Select avg(id),sum(id),max(id) From lyb 5.分組查詢Group By子句 聚合函數(shù)還可以與Group By子句結(jié)合使用,以便實現(xiàn)分類統(tǒng)計 統(tǒng)計每個系的男生人數(shù)和女生人數(shù) Select 系別, sex, count(*) From students Group By 系別, sex 只能出現(xiàn)group by子句
9、中的字段選擇分組HAVING短語HAVING 短語指定組或聚合的條件。只有滿足條件的組才被選出來,HAVING通常與GROUP BY子句一起使用。(注意與WHERE子句區(qū)分)SELECT XH, COUNT(*);FROM XK;GROUP BY XH;HAVING COUNT(*) 3例4.15查詢選修了3門以上課程的學(xué)生及選課數(shù):5. 多表查詢?nèi)绻樵兊膬?nèi)容來自多個表,就需要對多個表進行連接后再進行查詢 多表查詢舉例商品表和購物車表商品表shop(ID,Name,Picture,Type,Price,descrpt)購物車表cart(UserID,spID,Number)Select n
10、ame,picture,number,number*Price From shop, cart where shop.ID=cart.spID and cart.userID=tang其他查詢 (1)使用Distinct關(guān)鍵字可以去掉查詢結(jié)果中重復(fù)的記錄。如:多條記錄中有相同的作者則只顯示一條Select Distinct author From lyb(2)使用As關(guān)鍵字可以為字段名指定別名,如將author字段名顯示為“作者”:Select author As 作者, title As 標題 From lyb6.1.5 添加、刪除、更新記錄的語句Insert語句 語法:Insert Int
11、o 表 (字段1, 字段2, ) Values (字段1的值, 字段2的值, ) 實例:Insert Into lyb (author ) Values(芬芬)Insert Into lyb (author, title, date) VALUES (芬芬,大家好!,#207-12-12#) 字段名為SQL中的關(guān)鍵字時,必須加反引號InsertSelect語句表復(fù)制語句: Insert intoSelect語句語法為:Insert into Table2(field1,field2,.) select value1,value2,. from Table1要求目標表Table2必須存在Dele
12、te語句 語法: Delete From 表 Where 條件實例: Delete from lyb where id =17Delete from lyb where author=芬芬Delete from lyb where date#2010-9-1#Update語句 語法:Update 表 Set 字段1字段值1,字段2字段值2, Where 條件 實例:Update lyb Set email= where author=芬芬Update lyb Set title=此留言已被刪除, content=Null where id=16SQL字符串中含有變量的書寫方法 Select *
13、 from link where name=搜狐$str=Select * from link where name=搜狐 $str=select * from link where name=“. webName .第一部分,字符串常量:select * from link where name=第二部分,字符串變量:webName第三部分,字符串常量:SQL語句中含有多個變量的情況 Insert Into lyb (author, title) Values (芬芬,大家好!) 把它寫成SQL字符串就是:$str=Insert Into lyb (author, title) Values (芬芬,大家好!) 如果變量user=芬芬,tit=大家好!,則可將該SQL字符串改寫為:$str=Insert Into lyb (author, title) Values (“.us
溫馨提示
- 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)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 課程設(shè)計自動售水裝置
- 閱讀器課程設(shè)計
- 餐飲會員體系課程設(shè)計
- 水務(wù)的課程設(shè)計
- 計量課程設(shè)計題目
- 陽光玫瑰種植課程設(shè)計
- 個人與個人2024年度租賃合同范本3篇
- 職業(yè)經(jīng)理人聘用合同協(xié)議-2025年度人才戰(zhàn)略規(guī)劃
- 花店品牌授權(quán)合作合同書(2025年度)
- 2024油茶林種植基地與農(nóng)業(yè)物聯(lián)網(wǎng)技術(shù)應(yīng)用合作承包合同3篇
- 語文-山東省2025年1月濟南市高三期末學(xué)習(xí)質(zhì)量檢測濟南期末試題和答案
- 2025年七年級下冊道德與法治主要知識點
- 亞馬遜項目合伙合同
- (正式版)HG∕T 21633-2024 玻璃鋼管和管件選用規(guī)定
- 地質(zhì)工作個人述職報告三篇
- 產(chǎn)品可追溯流程圖圖
- 形意拳九歌八法釋意
- 中國主要機場管制席位及頻率
- 電站壓力式除氧器安全技術(shù)規(guī)定
- 鉆孔地質(zhì)編錄
- 《腹瀉》ppt課件
評論
0/150
提交評論