PHP_MySql擴展主要操作


MySql擴展,是PHP利用MYSQL服務器提供的接口,封裝出來的一系列操作MYSQL數據庫的函數集合。

1.開啟拓展在php.ini中,找到 extension_dir 這一項,開啟擴展。

2.可在phpinfo里,查看mysql擴展有沒有開啟成功


基本操作

mysql_connect        //接數據庫
mysql_set_charset     //設置字符集
mysql_select_db        //擇數據庫


#連接數據庫
#ip地址,端口號,賬號,密碼
#localhost為本地,如果端口號是3306可省略
$link = mysql_connect('localhost','root','123456');
var_dump($link);
#設置字符集
mysql_set_charset('utf8',$link);
#選擇數據庫,'test'為數據庫名
mysql_select_db('test',$link);

數據庫連接成功后得到一個資源類型的值。我們還可以通過執行SQL語句來設置字符集和選擇數據庫。

mysql_query  //這個函數用於執行SQL語句,語法跟直接操作mysql語句一樣
mysql_query(“set names utf8”);
mysql_query(“use test”);

增刪改操作
增刪改操作都是通過mysql_query函數來執行SQL語句完成,通過將一條sql語句達成操作,如:

$add = 'insert into 表名(字段) values("內容")';
$update = 'update 表名 set [修改內容]';
$del = 'delete from 表名 [條件]';

$res = mysql_query($add);
$res = mysql_query($update);
$res = mysql_query($del);

在sql操作中怎么寫,在php里就怎么寫,mysql_query() 的作用相當於在mysql里直接執行該語句。

查詢操作

通過mysql_query函數執行查詢SQL語句,會得到一個資源型的結果集,但這個結果幾不可以直接拿來用,我們需要確切的數據。

我們需要通過mysql_fetch_assoc函等數來對結果集進行遍歷,得到我們想要的數據。

mysql_fetch_assoc

1.執行mysql_fetch_assoc函數將會獲得關聯數組,這個數據對應着查詢出來的一條記錄;
2.每次執行mysql_fetch_assoc函數都將獲得一條新的記錄,然后指針下移;
3.當獲取到最后一條記錄后,再執行mysql_fetch_assoc函數,指針下移將無法獲得數據,此時返回false;

根據第2和第3兩點特性,我們可以通過while循環將數據統一保存到一個新的數組變量中,如:

#寫一條查詢語句,用sql_query()執行
$sql = 'select 字段 from 表名 where [查詢條件]';
$result = mysql_query($sql);

#設置一個空數組
$rows = array();
# mysql_fetch_assoc 每次獲取一條記錄,將結果放到 $row 中
while( $row = mysql_fetch_assoc($result) ){
    #用while循環將每次得到的結果放入數組元素
    $rows[] = $row;
}
var_dump($rows);

我們也可以通過mysql_fetch_row函數解析結果集,得到索引數組(數字下表)
通過mysql_fetch_array函數解析結果集,得到的索引數組記錄和關聯數組都包含

說明:

1)三個函數都可以解析結果集,並且每次都是獲取一條新的記錄;

2)三個函數從效果上來看是一樣的,但是返回的結果中,元素的形式(KEY值或元素的個數)不同

3)我們不僅有select語句類型查詢操作,我們還有show、desc之類的查詢操作,同樣也可以通過解析結果集的方式獲得查詢出的數據。

 MYSQL擴展中的相關功能函數

mysql_field_name    //獲取結果集中指定位置字段的字段名(下標從0開始)
mysql_num_fields    //獲取結果集中字段個數(有幾個字段意味着有幾個列)
mysql_errno      //返回錯誤信息的代號
mysql_error      //返回錯誤信息的內容
mysql_insert_id     //獲取最新插入數據的ID值

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM