在php5以上的版本中可以使用mysql和mysqli兩套擴充套件函式,mysqli是php5中新加的,是對mysql擴充套件的改進。很多老專案是在php4使用mysql擴充套件開發的,如果對這些老專案進行二次開發,就需要會使用mysql擴充套件函式。如果是新的設計的專案,則推薦使用mysqli或者pdo技術。
如果要用mysql擴充套件,在linux伺服器中在編譯時加上—with-mysql選項,如果是windows服務站,則需要啟用乙個dll檔案提供相應的擴充套件。
資料庫連線函式mysql_connect(server,user,pwd,newlink,clientflag)
通常只提供三個引數,即mysql伺服器的主機名,mysql使用者名稱和密碼。
mysql_close(link_identifier)
指令碼一結束,到伺服器的連線就被關閉,除非之前已經明確呼叫 mysql_close() 關閉了。
選擇已經建立的資料庫mysql_select_db(database,connection)
database 資料庫名稱,connection 可選,mysql連線資源,如果不填則使用上乙個連線
執行sql命令mysql_query(query,connection)
query 表示需要執行sql命令,connection可選,mysql連線資源,如果不填則使用上乙個連線
如果該函式執行成功則返回乙個非0的值。如果沒有執行成功,該函式將返回false(0)。當出錯是可以通過mysql_error()和mysql_errno()函式來檢視錯誤原因。
如果執行完insert update 和delete等dml命令之後,可以呼叫mysql_affected_rows()函式檢視它們到底修改了多少條資料記錄。執行insert命令之後,還可以呼叫mysql_insert_id()函式檢視插入的最後一條新記錄auto_increment值是多少。
//連線資料庫
$db =mysql_connect('localhost','root','root');
if( !$db )elseelseelse{
echo'刪除記錄失敗'.mysql_error();
//關閉資料庫連線
mysql_close($db);
select查詢結果集的處理
執行select命令之後,mysql_query()函式的返回值是乙個php資源的引用指標(結果集)。這個返回值可以用在各種結果集處理函式中,對結果資料表的各個字段進行處理。
$result = mysql_query(「select * from users」); //執行select語句返回結果集$result
$rows = mysql_num_rows($result); //從結果集中獲取資料記錄行的個數
$cols = mysql_num_fields($result); //從結果集中獲取資料記錄列的個數
$col = mysql_fetch_fields($result); //取得具體的字段資訊
通過下面四個函式可以對結果資料集中的資料進行訪問。每次呼叫將自動返回下一條結果記錄,如果達到結果集資料表的末尾,則返回false。如果想改變這個順序,就必須用mysql_data_seek()函式明確地改變當前結果記錄。
mysql_fetch_row():該函式將一條結果記錄返回並已乙個普通的索引陣列的形式儲存。
mysql_fetch_assoc():該函式將一條結果記錄返回並以乙個普通的關聯陣列的形式儲存。
mysql_fetch_array():該函式可以將結果資料表中的每一行獲取為乙個關聯陣列或索引陣列,或者同時獲取為關聯陣列和索引陣列。可以通過引數mysql_assoc、mysql_num或者mysql_both中的乙個常量返回不同的陣列形態,預設使用mysql_both常量將兩種陣列一起返回。
mysql_fetch_object():該函式以乙個物件的形式返回一條結果記錄,它的各個字段需要以物件的形式進行訪問。
//連線資料庫
$db =mysql_connect('localhost','root','root');
if( !$db ){
die('資料庫連線失敗:'.mysql_error() );
//選擇資料庫
mysql_select_db('test',$db) ordie('選擇資料庫失敗:'.mysql_error() );
$sql ="select* from user";
$result= mysql_query($sql);
echo'行數:'.$rows = mysql_num_rows($result).'';
echo'列數:'.mysql_num_fields($result).'';
echo"userid使用者名稱年齡性別郵箱";
while( $row= mysql_fetch_assoc($result) ){
echo"
".$row['userid']."".$row['username']."".$row['age']."".$row['***']."".$row['email']."";
echo"";
mysql_free_result($result);//釋放查詢的結果集資源
//關閉資料庫連線
mysql_close($db);
如何使用J2ME中的執行緒 2
private void draw3dblock graphics g,int c,int x,int y,int width,int height public static boolean drawtext graphics g,string str,int x,int y,int anchor...
log4j2的使用教程
因為log4j版本存在bug,公司要求將log4j公升級到log4j2,在處理過程中,有一些心得體會,這裡分享一下 公升級場景 我們的 不是web程式,也沒有用到spring或者springboot,這裡所有的東西都是自己寫的,使用的main函式,從main函式直接進入,然後自己填寫log4j2.x...
log4j2 使用詳解
1.log4j2的匯入 2.測試用例 log4j 2.0的使用非常簡單,只要用logmanager的getlogger函式獲取乙個logger,就可以使用logger記錄日誌,如下 import org.apache.logging.log4j.logmanager import org.apach...