(1)連接數(shù)據(jù)庫服務(wù)器
$connection=mysql_connect('localhost','root','');
<u></u>mysql_connect
用來打開非持久的mysql連接彤路。
它接受3個參數(shù):服務(wù)器地址,用戶名芥映,密碼
如果成功則返回一個mysql連接標(biāo)識洲尊,失敗則返回false
注意:
腳本一結(jié)束,到服務(wù)器的連接就被關(guān)閉奈偏。
除非之前已經(jīng)明確調(diào)用mysql_close($connection)
關(guān)閉了坞嘀。
要創(chuàng)建一個持久連接,使用mysql_pconnect
函數(shù)惊来。
(2)選擇數(shù)據(jù)庫
mysql_select_db('db_name',$connection);
<u></u>mysql_select_db
用來設(shè)置活動的mysql數(shù)據(jù)庫丽涩。
它接受2個參數(shù):數(shù)據(jù)庫名,連接標(biāo)識(可選裁蚁,如果未指定矢渊,則使用上一個連接)
如果成功則返回true,失敗則返回false枉证。
(3)連接數(shù)據(jù)庫的時候指定編碼
使php寫入mysql的編碼為utf-8矮男。
php5.2.3以及mysql5.0.7之后建議使用:
mysql_set_charset('utf8',$connection);
不建議使用:
mysql_query('SET NAME utf8',$connection);
(4)執(zhí)行sql語句
$sql=" SELECT * FROM` gosun_activity `";
$result=mysql_query($sql);
<u></u>mysql_query
用來執(zhí)行一條mysql查詢。
它接受2個參數(shù):查詢字符串室谚,連接標(biāo)識(可選毡鉴,如果未規(guī)定崔泵,則使用上一個打開的連接)
<u></u>mysql_query
僅對SELECT
,SHOW
眨补,EXPLAIN
或DESCRIBE
語句返回一個資源標(biāo)識符(結(jié)果集)管削,如果查詢執(zhí)行不正確則返回false。對于其他類型的sql語句撑螺,mysql_query
在執(zhí)行成功時返回true,出錯時返回false崎弃。
注意:
查詢字符串不應(yīng)以分號結(jié)束甘晤。
如果沒有打開的連接,本函數(shù)會嘗試無參數(shù)調(diào)用mysql_connect
函數(shù)來建立一個連接并使用饲做。
非false的返回值线婚,意味著查詢是合法的,并能夠被服務(wù)器執(zhí)行盆均,這并不說明任何有關(guān)影響到的或返回的行數(shù)塞弊,很有可能一條查詢執(zhí)行成功了但并未影響到或并未返回任何行。
該函數(shù)會自動對記錄集進(jìn)行讀取和緩存泪姨,如需進(jìn)行非緩存查詢游沿,使用mysql_unbuffered_query
(5)獲得返回行數(shù)
$supportNumber=mysql_num_rows($result);
<u></u>mysql_num_rows
用來返回結(jié)果集中行的數(shù)目。
它接受1個參數(shù):結(jié)果集肮砾。
注意:
此命令僅對SELECT語句有效诀黍。
要取得被INSERT
,UPDATE
仗处,或者DELETE
查詢所影響到的行的數(shù)目眯勾,使用mysql_affected_rows
。
如果使用mysql_unbuffered_query
婆誓,則直到結(jié)果集中的所有行都被提取后mysql_num_rows
才能返回正確的值吃环。
(6)獲得結(jié)果集的下一行
$row=mysql_fetch_array($result);
<u></u>mysql_fetch_array
用來從結(jié)果集中取得一行作為數(shù)組。
(關(guān)聯(lián)數(shù)組洋幻,數(shù)字?jǐn)?shù)組郁轻,或二者兼有)
如果沒有更多的行,則返回false鞋屈。
它接受2個參數(shù):數(shù)據(jù)指針范咨,結(jié)果類型
數(shù)據(jù)指針,是mysql_query
的返回值厂庇。
結(jié)果類型渠啊,MYSQL_ASSOC
關(guān)聯(lián)數(shù)組,MYSQL_NUM
數(shù)字?jǐn)?shù)組权旷,MYSQL_BOTH
默認(rèn)(同時產(chǎn)生關(guān)聯(lián)和數(shù)字?jǐn)?shù)組)
注意:
<u></u>mysql_fetch_array
是mysql_fetch_row
的擴(kuò)展版本替蛉,除了將數(shù)據(jù)以數(shù)字索引方式儲存在數(shù)組中之外贯溅,還可以將數(shù)據(jù)作為關(guān)聯(lián)索引儲存,用字段名作為鍵名躲查。
用mysql_fetch_array
并不明顯比用mysql_fetch_row
慢它浅,而且還明顯提供了更多的值。
字段名是區(qū)分大小寫的镣煮。