国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

php mysql mysqli區別比較詳解

2024-07-24 12:38:58
字體:
來源:轉載
供稿:網友

文章今天來分析一下在php中的兩種數據庫連接方法mysql,mysqli以前我都是用mysql很少用mysqli,原因mysqli是php默認配置中是沒有開啟的下面我們來看它們之間各自的優點和不足吧.

mysql是非持繼連接函數而mysqli是永遠連接函數,也就是說mysql每次鏈接都會打開一個連接的進程而mysqli多次運行mysqli將使用同一連接進程,從而減少了服務器的開銷,有些朋友在編程的時候,使用new mysqli('localhost', usenamer', 'password', 'databasename');總是報錯,Fatal error: Class 'mysqli' not found in d:...

mysqli類不是php自帶的嗎?

不是默認開啟的,win下要改php.ini,去掉php_mysqli.dll前的;,linux下要把mysqli編譯進去,實例:mysql.dll(可以理解為函數式的方式),代碼如下:

  1. $conn = mysql_connect(‘localhost’, ‘user’, ‘password’); //連接mysql數據庫 
  2.   mysql_select_db(‘data_base’); //選擇數據庫 
  3.   //Vevb.com 
  4.   $result = mysql_query(‘select * from data_base’);//這里有第二個可選參數,指定打開的連接 
  5.  
  6.   $row = mysql_fetch_row( $result ) ) //為了簡單,這里只取一行數據 
  7.   echo $row[0]; //輸出第一個字段的值 

mysql_pconnect打開的連接不會關閉,即使調用mysql_close也不會關閉,因為對其無效,類似于連接緩沖池,如果下次有來自于同一個機器的同一個用戶名,對同一個數據庫的連接,php會自動使用上次已經建立的連接,而不需要再重新建立一個.

好處:是省去了每次與數據庫建立連接的開銷.

壞處:是需要浪費一些內存,占用一些連接.

所以如果用戶訪問量大的時候會出現錯誤,要把mysql的max_connections參數改大一點,或者使用mysql_connect()就解決問題.

mysqli也有過程式的方式,只不過開始貫以mysqli的前綴,其他都差不多,如果mysqli以過程式的方式操作的話,有些函數必須指定資源,比如說 mysqli_query(資源標識,SQL語句),并且資源標識的參數是放在前面的,而mysql_query(SQL語句,’可選’)的資源標識是放在后面的,并且可以不指定,它默認是上一個打開的連接或資源.

實例:mysqli.dll(對象方式),代碼如下:

  1. $conn = new mysqli(‘localhost’, ‘user’, ‘password’,'data_base’); 
  2. //這里的連接是new出來的,最后一個參數是直接指定數據庫,不用mysql_select_db()了 
  3. //也可以構造時候不指定,然后 $conn -> select_db(‘data_base’) 
  4. $result = $conn -> query( ‘select * from data_base’ ); 
  5. $row = $result -> fetch_row();  //取一行數據 
  6. echo row[0]; //輸出第一個字段的值  

-可以和mysql.dll一樣的方式使用;

-支持OO接口,簡簡單單調用;

-支持MYSQL4.引入的新特性;

-通過mysqli_init() 等相關函數,可以設置高級連接選項.

一般安裝時選擇MySQL,因為有的服務器不支持MySQLi.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 赫章县| 靖宇县| 库伦旗| 通州市| 崇左市| 南和县| 福清市| 习水县| 芜湖市| 华宁县| 凤冈县| 台江县| 临湘市| 普兰店市| 德昌县| 江都市| 洛隆县| 涡阳县| 汨罗市| 来安县| 博爱县| 祁门县| 清水河县| 太原市| 甘肃省| 宕昌县| 尉犁县| 蕉岭县| 舟山市| 乌恰县| 临桂县| 新宾| 库伦旗| 贵溪市| 绥江县| 万荣县| 武川县| 容城县| 秦安县| 南岸区| 扎赉特旗|