php中的mysql操作詳解
接下來為大家帶來這幾天學習php與mysql的一些知識心得,非常實用也非常具體,涵蓋了所有常用的php中mysql的內置方法。
數據庫連接:
mysql_connect(‘localhost’,’root’,’root’);//三個參數分別為數據庫地址、數據庫用戶名和密碼
設定mysql鏈接標識符$con=mysql_connect(‘localhost’,’root’,’root’)
通過$con關閉數據庫:mysql_close($con);
打開某一個數據庫:mysql_select_db(“database”)//參數為要選擇的數據庫名稱
執行一個sql語句:mysql_query(‘insert into test(name) values(“abc”)’);
通過打印mysql_error();可以方便查看哪里出現了錯誤
mysql_query(‘set names utf8’);告訴數據庫一下的操作均以utf8的編碼格式輸入和輸出
mysql_fetch_row()以索引數組形式獲取數據
$query = mysql_query(‘select * from test’);//執行成功返回資源標識符(是執行這個語句返回的數據所在的地址)
mysql_fetch_row($query);//返回一個數組,顯示查詢到的第一條數據的信息
如果想輸出查詢到的所有數據,則
while($row = mysql_fetch_row($query)){print_r($row);}//循環打印所有查詢到的信息(一個數組一個數組的打印)
即mysql_fetch_row()每執行一次,都從結果集中一次取一條數據。每個數組的索引值和字段的順序有關。比如一個數據有name、sex、password等字段,則Array[0]=>顯示name的值,以此類推。因此,上面的語句可以直接通過$row[0]取得name等等。
mysql_fetch_array()以混合數組形式獲取數據
$arr = mysql_fetch_array($query);這樣使用后,$attr[‘name’]直接就能取到name字段的值
$arr = mysql_fetch_array($query,MYSQL_ASSOC);這樣就消去了索引值的那些數組,只剩對應字段名稱的部分了
MYSQL_ASSOC:返回關聯數組(只返回關聯字段的數組)
MYSQL_NUM:返回數字數組(就像mysql_fetch_row所返回那樣)
MYSQL_BOTH:返回混合數組
mysql_fetch_assoc()一關聯數組形式獲取數組
mysql_fetch_object()以對象的形式獲取和顯示數據
取數值的方法:
$arr = mysql_fetch_object($query);
$arr -> name;即可取到name 的值
mysql_num_rows():獲取結果集當中行的數目,返回一個數字。可以用于進行數據輸出前的判斷(用if語句,沒有數據的時候就不輸出,節省資源)
mysql_result();返回結果集中一個字段的值
mysql_result($query,0,1);//第二個參數指明取第幾行,第三個三叔指明取第幾個字段(偏移量)。這種方式實現了選取某一個字段的值。
mysql_affected_rows:獲取前一次操作受影響的記錄的行數(即有幾行進行了修改)