尚學(xué)堂百戰(zhàn)程序員_第1頁
尚學(xué)堂百戰(zhàn)程序員_第2頁
尚學(xué)堂百戰(zhàn)程序員_第3頁
尚學(xué)堂百戰(zhàn)程序員_第4頁
尚學(xué)堂百戰(zhàn)程序員_第5頁
已閱讀5頁,還剩14頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

MySQL數(shù)據(jù)庫課程大綱1.MySQL數(shù)據(jù)庫簡介2.MySQL數(shù)據(jù)庫的可視化工具3.可視化工具的【增刪改查】操作4.php連接數(shù)據(jù)庫與基本操作配置5.php操作數(shù)據(jù)庫【增刪改查】操作6.html與php+MySQL完成前后端交互7.登錄案例

1.MySQL數(shù)據(jù)庫簡介 MySQL是一種開放源代碼的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS),使用最常用的數(shù)據(jù)庫管理語言--結(jié)構(gòu)化查詢語言(SQL)進(jìn)行數(shù)據(jù)庫管理。 MySQL是開放源代碼的,因此任何人都可以在GeneralPublicLicense的許可下下載并根據(jù)個(gè)性化的需要對(duì)其進(jìn)行修改。 MySQL因?yàn)槠渌俣取⒖煽啃院瓦m應(yīng)性而備受關(guān)注。大多數(shù)人都認(rèn)為在不需要事務(wù)化處理的情況下,MySQL是管理內(nèi)容最好的選擇。 時(shí)至今日MySQL和php的結(jié)合絕對(duì)是完美.很多大型的網(wǎng)站也用到Mysql數(shù)據(jù)庫.mysql的發(fā)展前景是非常光明的!2.MySQL數(shù)據(jù)庫的可視化工具 (1)phpmyadmin (2)NavicatforMySQL

3.可視化工具的【增刪改查】操作 (1)phpmyadmin:

或者

(2)navicatformysql:

下載、安裝、破解、連接

ps:需要說明一點(diǎn)就是無論是phpmyadmin也好還是navivatformysql也好,兩者都僅是一個(gè)對(duì)于數(shù)據(jù)庫操作和管理的工具,他們并不是數(shù)據(jù)庫本身。

練習(xí):

(1)通過phpmyadmin工具,新建一個(gè)數(shù)據(jù)庫名為libraryDB a.為這個(gè)數(shù)據(jù)庫添加一張表,表中有5個(gè)字段,分別為 【bookId】【bookName】【bookAuthor】【bookPrice】【bookNum】 b.查詢表中所有條目 c.添加兩個(gè)條目,并再次查詢所有條目 d.修改其中Id是2的條目,價(jià)格改成300,數(shù)量改成1000。 修改完畢后查詢id是2的條目 e.刪除id是1的條目

(2)通過navicatformysql工具,重復(fù)上述操作。

注意:兩個(gè)工具操作的實(shí)際上是同一個(gè)數(shù)據(jù)庫

4.php連接數(shù)據(jù)庫與基本操作配置 (1)php創(chuàng)建數(shù)據(jù)庫【連接】 語法:Objectmysqli_connect("域名","DB賬號(hào)","DB密碼","DB庫名")

例子:$con=mysqli_connect('localhost','root','','frankdb'); (2)向DB中插入數(shù)據(jù)時(shí)包含中文出現(xiàn)亂碼的解決方案

語法:mysqli_query($con,"setnamesutf8");

說明:設(shè)置成功會(huì)返回1,根據(jù)實(shí)際情況并不一定必須保存返回結(jié)果。

(3)設(shè)置client端和server端保持字符編碼一致

語法:mysqli_query($con,"setcharacter_set_client=utf8"); mysqli_query($con,"setcharacter_set_results=utf8");

(4)執(zhí)行sql語句 語法:$結(jié)果=$DB連接->query(sql語句);

例子:var_dump($result=$con->query($sql));5.php操作數(shù)據(jù)庫【增刪改查】操作

操作數(shù)據(jù)庫的基本步驟大多相同,只不過是sql語句結(jié)構(gòu)的區(qū)別。不同的sql語句能夠完成不同的功能,因此學(xué)習(xí)如何操作數(shù)據(jù)庫實(shí)際上就是在學(xué)習(xí)如何編寫sql語句。 (1)使用sql語句基本【模板】 (2)sql查詢語句

(3)sql插入語句 (4)sql修改語句 (5)sql刪除語句

(1)使用sql語句基本【模板】 提供模板并不是說以后我們操作數(shù)據(jù)庫就都采用這種結(jié)構(gòu),而是對(duì)于初學(xué)者而言我們?cè)跊]有接觸過數(shù)據(jù)庫的情況下,這樣的模板能夠幫助我們快速的上手從php中操作mysql數(shù)據(jù)庫。a.建立連接b.判斷是否連接c.設(shè)置編碼d.創(chuàng)建sql語句e.執(zhí)行sql語句,并獲得結(jié)果f.判斷結(jié)果條數(shù)g.拼湊結(jié)果h.json化返回$con=mysqli_connect('localhost','root','','frankdb');if($con){ echo"<pre>"; mysqli_query($con,'setnamesutf8'); mysqli_query($con,'setcharacter_set_client=utf8'); mysqli_query($con,'setcharacter_set_results=utf8'); $sql='select*fromfriendslistwhere1'; $result=$con->query($sql); if($result->num_rows>0){ for($i=0,$jsonInfo=[];$row=$result->fetch_assoc();$i++){ $jsonInfo[]=$row; } echojson_encode($jsonInfo); }}a.建立連接b.判斷是否連接c.設(shè)置編碼d.創(chuàng)建sql語句e.執(zhí)行sql語句,并獲得結(jié)果f.判斷結(jié)果條數(shù)g.拼湊結(jié)果h.json化返回

(2)sql查詢語句描述:表示去數(shù)據(jù)庫中指定的表內(nèi)根據(jù)條件查詢指定的內(nèi)容語法:$sql="select【信息】from【哪張表】where【查詢條件】";說明:

a.【信息】有兩種寫法: 一是寫*星號(hào),代表查詢所有字段對(duì)應(yīng)的信息

$sql="select*fromfriendslistwhere1";

二是寫指定字段,代表查詢某個(gè)字段對(duì)應(yīng)信息,如果有多個(gè)則用逗號(hào)隔開

$sql="selectfriendsNamefromfriendslistwhere1"; b.【哪張表】就是直接寫出對(duì)應(yīng)表的名字即可

c.【查詢條件】有兩種寫法: 一是無條件查詢,那么直接寫1即可。

$sql="select*fromfriendslistwhere1";

二是有條件查詢,在后面寫出額外的查詢條件。如果有多個(gè)用and或or連接

$sql="select*fromfriendslistwherefriendsSex='female'"; $sql="select*fromfriendslistwherefriendsSex='female'andfriendsAge=21"; $sql="select*fromfriendslistwherefriendsSex='male'orfriendsAge=18";(3)sql插入語句語法:$sql="insertinto表名(字段1,字段2,...)values('值1','值2',...)"; $sql="insertinto表名values(值1,值2,...)";(4)sql修改語句語法:$sql=“update表名set字段1='新值1',…whereid=$id",…;注意:修改的關(guān)鍵詞是update,而不是updata??!注意:where后面的條件可以和修改的內(nèi)容相同。(5)sql刪除語句語法:$sql='deletefrom表名where條件';說明:根據(jù)指明的條件刪除對(duì)應(yīng)數(shù)據(jù)6.html與php+MySQL完成前后端交互C端S端DB1.發(fā)起ajaxrequest2.連接數(shù)據(jù)庫,獲得【連接】3.通過【連接】在S中通過sql語句查詢用戶所需求的內(nèi)容4.通過echoresponse圖示:WEB請(qǐng)求相應(yīng)模型前端關(guān)鍵部分代碼:【ajax請(qǐng)求】 $.ajax({ type:'post', url:'add.php', dataType:"json", data:{ friendsName:$('.fname').val(),

… }, success:function(data){console.log(data);}, error:function(error){console.log(error);}});后臺(tái)部分代碼:【php接受ajaxrequest,并通過echo給出response】$con=mysqli_connect('localhost','root','','frankdb');$success=array("code"=>"success");$error=array("code"=>"error");if($con){ mysqli_query($con,'setnamesutf8'); mysqli_query($con,'setcharacter_set_client=utf8'); mysqli_query($con,'setcharacter_set_results=utf8'); $fname=$_POST['friendsName'];

… $result=$con->query("insertintofriendslistvalues($fname,…)"); if($result){ echojson_encode($success); }}else{ echojson_encode($error);}7.登錄案例

對(duì)于登錄案例的業(yè)務(wù)邏輯各位應(yīng)當(dāng)都不陌生,但具體的實(shí)現(xiàn)過程需要我們細(xì)化到語句才可以。在本例中我們并不過多的考慮在實(shí)現(xiàn)登錄過程中前端語法部分對(duì)用戶的要求,而把重心暫時(shí)放在如何實(shí)現(xiàn)WEB請(qǐng)求響應(yīng)上面。而我們已經(jīng)了解并掌握的部分有:

(1)將用戶輸入信息發(fā)送給后臺(tái)--------ajax請(qǐng)求實(shí)現(xiàn) (2)后臺(tái)接收用戶發(fā)送的內(nèi)容--------php中的$_POST或$_GET對(duì)象獲取

溫馨提示

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

評(píng)論

0/150

提交評(píng)論