標籤:php操作mysql
<?php
//串連資料庫
//設定文檔顯示編碼
header(‘Content-type:text/html;charset=utf-8‘);
if($con=mysql_connect(‘localhost‘,‘root‘,‘1234‘)){//返回串連標識符
echo ‘串連成功<br>‘;
}else{
echo ‘串連失敗<br>‘;
}
//選擇資料庫
if(mysql_select_db(‘mydbtest‘)){
echo "選擇資料庫成功<br>";
}else{
echo ‘選擇資料庫失敗<br>‘;
}
//設定編碼
mysql_query(‘set names utf8‘);
#插入資料
/*
$sql=‘insert into mytab(name) values(\‘huge\‘)‘;
if(mysql_query($sql)){//當sql語句為插入資料時,成功返回true,否則返回false
echo ‘插入資料成功!<br>‘;
}else{
echo ‘插入失敗,原因:‘.mysql_error();
}
*/
#查詢
//4fetch函數mysql_fetch_row(),mysql_fetch_array(),mysql_fetch_object(),mysql_fetch_assoc()
#mysql_fetch_row每次擷取一條資料,產生一個索引數組,即下標是數字
/*
$sql=‘select * from mytab‘;
$query=mysql_query($sql);//當mysql_query執行select語句時,返回的是資源標識符,資源標識符是返回指向記憶體中的地址
//mysql_fetch_row(),每執行一次,都從資源也就是結果集中一次取一條資料以數組的形式返回出來,當前次取到最後一條資料的時候,這一次返回空結果
//使用mysql_fetch_row()遍曆表
while($row=mysql_fetch_row($query)){
print_r($row);
}
*/
#mysql_fetch_array(),取一條資料,同上,預設返回索引數組和關聯陣列,儘管使用起來更方便,但效率不及mysql_fetch_now()
#第一個參數,資源標識符,第二個參數是數組輸出形式,有MYSQL_ASSOC,只輸出關聯陣列;MYSQL_NUM,只輸出索引數組;MYSQL_BOTH,所以數組+關聯陣列
/*
$sql=‘select * from mytab‘;
$query=mysql_query($sql);
//預設
echo ‘<br>預設:‘;
$row=mysql_fetch_array($query);
print_r($row);
//MYSQL_NUM,索引數組
echo ‘<br>索引數組:‘;
$row=mysql_fetch_array($query,MYSQL_NUM);
print_r($row);
//MYSQL_ASSOC,關聯陣列
echo ‘<br>關聯陣列:‘;
$row=mysql_fetch_array($query,MYSQL_ASSOC);
print_r($row);
*/
#mysql_fetch_assoc,同mysql_fetch_array中的第二個參數選擇為MYSQL_ASSOC
/*
$sql=‘select * from mytab‘;
$query=mysql_query($sql);
$row=mysql_fetch_assoc($query);
print_r($row);
*/
#mysql_fetch_object ,返回一行資料並將其轉換為一個對象
/*
$sql=‘select * from mytab‘;
$query=mysql_query($sql);
$obj=mysql_fetch_object($query);
print_r($obj);
echo ‘<br>‘;
echo $obj->Name;
*/
#mysql_num_rows,返回結果的行數
/*
$sql=‘select * from mytab‘;
$query=mysql_query($sql);//sql語句不正確則返回空
//echo $query;
//echo ‘<br>‘;
echo mysql_num_rows($query);
echo ‘<br>‘;
if($query&&mysql_num_rows($query)){
//迴圈遍曆表
while ($row=mysql_fetch_row($query)) {
print_r($row);
echo ‘<br>‘;
}
}
*/
#mysql_result,返回結果集中制定行和列的某個欄位的值
/*
//$sql=‘select count(*) from mytab‘;
$sql=‘select * from mytab‘;
$query=mysql_query($sql);
//echo mysql_result($query,0);//共三個參數,第一個資源變數結果集,第二個行號,第三個列位移量或列名
//echo mysql_result($query,0,1);//其中行號和列號都是從0開始的
echo mysql_result($query,3,‘Name‘);
*/
//mysql_affected_rows(),返回執行sql後影響的行數,參數為串連標識符
$sql=‘insert into mytab(name) values(\‘huge1\‘)‘;
if(mysql_query($sql)){
echo ‘插入成功!‘;
echo ‘<br>資料庫中受影響的行數為:‘;
echo mysql_affected_rows($con);//該函數如果修改的資料與原資料相同,則受影響的行數為0,另外該函數只返回mysql_query中最後一詞調用資料庫受影響的行數
}
//關閉資料庫連接,關閉非持久的資料庫連接
mysql_close($con);
?>
本文出自 “虎哥的部落格” 部落格,請務必保留此出處http://7613577.blog.51cto.com/7603577/1531693