国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

數(shù)據(jù)庫連接步驟

數(shù)據(jù)庫連接步驟

我們?yōu)榇蠹覍?shù)據(jù)庫連接整理成了最重要的8個步驟,戲稱它為:“數(shù)據(jù)庫連接天龍八步”。

這八個步驟如下,并且將每一步使用的函數(shù)都做了說明:

第一步: 連接數(shù)據(jù)庫服務(wù)器

QQ截圖20161010093817.png

若參數(shù)4,數(shù)據(jù)庫名稱在此步已填并擇,不需要執(zhí)行第三步。

第二步: 判斷錯誤

QQ截圖20161010094028.png

QQ截圖20161010094038.png

第三步: 選擇數(shù)據(jù)庫

QQ截圖20161010094047.png

若在第一步已填數(shù)據(jù)庫,不需要更換成其他數(shù)據(jù)庫,則不需要執(zhí)行第三步。

第四步: 設(shè)置字符集

QQ截圖20161010094058.png

第五步: 準(zhǔn)備SQL語句

其實就是一個SQL語句的字符串。

例如:

$sql = "insert into user(username,password) values('$username','$password')";

我們通常要把變量賦值在SQL語句中使用??墒亲兞炕蛘逽QL語句出錯了,非常不好排查。

我們根據(jù)實際工作經(jīng)驗增加了這一步。

如果在執(zhí)行此步的時候報錯了,我們可以把SQL語句打印出來,粘貼到phpMyAdmin或者相關(guān)工具中。

排錯時,如果執(zhí)行成功就說明不是SQL語句的問題。如果執(zhí)行失敗,請仔細(xì)檢查SQL語句。

第六步: 發(fā)送SQL語句

QQ截圖20161010094109.png

SQL語句準(zhǔn)備完成,需要通過mysqli_query將SQL語句發(fā)送給MySQL服務(wù)器。

MySQL服務(wù)器會執(zhí)行發(fā)送過來的SQL語句進行執(zhí)行。

第七步: 判斷是否執(zhí)行正?;蛘弑闅v數(shù)據(jù)

讀取

第6步中,發(fā)送的是select類別的語句,通常需要將結(jié)果輸出顯示出來。就需要用到遍歷顯示數(shù)據(jù)的函數(shù)。

QQ截圖20161010094134.png

QQ截圖20161010094155.png

QQ截圖20161010094211.png

QQ截圖20161010094220.png

寫入

第6步中,如果發(fā)送的是insert的語句,通常需要得到是否執(zhí)行成功,或者同時拿到自增的ID。

修改和刪除

第6步中,如果發(fā)送的是update和delete類別的語句。只需要判斷是否執(zhí)行成功即可。

我們將這些常用函數(shù)列出數(shù)據(jù)表給給大家查看。

第八步: 關(guān)閉數(shù)據(jù)庫

QQ截圖20161010094253.png

數(shù)據(jù)庫連接是一個資源類型。我們在之前的章節(jié)中講解資源類型的時候跟大家說過。凡是涉及到數(shù)資源類型的有打開就有關(guān)閉。這樣能夠保證PHP更高效的處理和回收資源。

因此,數(shù)據(jù)庫連接成功后,不需要使用的時候。我們可以關(guān)閉這個連接。

其他:顯示服務(wù)器信息函數(shù)

QQ截圖20161010094305.png

注意:
mysqli只學(xué)過程化的方法即可。在面向?qū)ο箅A段實際工作中完全拋棄了mysqli的對象用法,而是使用的是PDO對象連接數(shù)據(jù)庫的方式。

1.為了更好地設(shè)置數(shù)據(jù)連接,一般會將數(shù)據(jù)連接所涉及的值定義成變量.

<?php
 $mysql_server_name='localhost'; //改成自己的mysql數(shù)據(jù)庫服務(wù)器
 
 $mysql_username='root'; //改成自己的mysql數(shù)據(jù)庫用戶名
 
 $mysql_password='123456789'; //改成自己的mysql數(shù)據(jù)庫密碼
 
 $mysql_database='php'; //改成自己的mysql數(shù)據(jù)庫名
 ?>

也可把以上變量放在一個文件里,可以隨時讓其他文件調(diào)用.

例如: 將以上內(nèi)容放在:db_config.php 那么在其他需要用到數(shù)據(jù)庫的頁面直接調(diào)用.

調(diào)用代碼:require("db_config.php");

?2.連接數(shù)據(jù)庫

<?php
 $conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password) or die("error connecting") ; //連接數(shù)據(jù)庫
 
 mysql_query("set names 'utf8'"); //數(shù)據(jù)庫輸出編碼 應(yīng)該與你的數(shù)據(jù)庫編碼保持一致.南昌網(wǎng)站建設(shè)公司百恒網(wǎng)絡(luò)PHP工程師建議用UTF-8 國際標(biāo)準(zhǔn)編碼.
 
 mysql_select_db($mysql_database); //打開數(shù)據(jù)庫
 
 $sql ="select * from news "; //SQL語句
 
 $result = mysql_query($sql,$conn); //查詢
 ?>

?

3.讀取表中的內(nèi)容,這里我們用while,可以根據(jù)具體情況,用for 或其他的.

<?php
 while($row = mysql_fetch_array($result))
 {
 echo "<div style=\"height:24px; line-height:24px; font-weight:bold;\">"; //排版代碼
 echo $row['Topic'] . "<br/>";
 echo "</div>"; //排版代碼
 }
 ?>

?4.php寫入數(shù)據(jù)庫,Mysql數(shù)據(jù)的寫入

<?php
 $conn=mysql_connect($mysql_server_name,$mysql_username,$mysql_password); //連接數(shù)據(jù)庫
 mysql_query("set names 'utf8'"); //數(shù)據(jù)庫輸出編碼
 mysql_select_db($mysql_database); //打開數(shù)據(jù)庫
 $sql = "insert into messageboard (Topic,Content,Enabled,Date) values ('$Topic','$Content','1','2011-01-12')";
 mysql_query($sql);
 mysql_close(); //關(guān)閉MySQL連接
 ?>

?


繼續(xù)學(xué)習(xí)
||
<?php $mysql_server_name='localhost'; //改成自己的mysql數(shù)據(jù)庫服務(wù)器 $mysql_username='root'; //改成自己的mysql數(shù)據(jù)庫用戶名 $mysql_password='123456789'; //改成自己的mysql數(shù)據(jù)庫密碼 $mysql_database='php'; //改成自己的mysql數(shù)據(jù)庫名 ?>
提交重置代碼