關於php操作mysql執行資料庫查詢的一些常用操作匯總

來源:互聯網
上載者:User

php操作mysql步驟:
1.$connect=mysql_connect('localhost','root','123456') or die('資料庫連接失敗。'mysql_error());連結mysql。
2.mysql_select_db('database',$connect)選擇連結的資料庫。
3.mysql_query('Set names gb2312');$sql = "select * from blog_article";準備要查詢的資料。
4.$datas = mysql_query($sql);執行sql查詢。
5.$data = mysql_fetch_assoc($datas)得到查詢到的緩衝在記憶體中的一條資料。
6.print_r($data);

相同點:三個函數都是返回資料庫中查詢到的一行資料(說的再清楚點就是一條資料)。
不同點:mysql_fetch_assoc()用的是資料庫中相應的欄位名作為的key值(也就是數組下標)
如:filed['id']=1;
mysql_fetch_row()用的是自動產生的數字(從0開始依次產生)作為的key值(也就是數組下標)
如:filed[0]=1;
mysql_fetch_array()用的是自動產生的數字(從0開始依次產生)作為的key值(也就是數組下標),而且它還同時產生資料庫中相應的欄位名作為的key值(也就是數組下標)
如:
filed[0]=1,filed['id']=1;也就是說,mysql_fetch_array()將mysql_fetch_assoc()和mysql_fetch_row()查詢到的結果合為了一體了。
mysql_fetch_object()與mysql_fetch_assoc()差不多。只是mysql_fetch_assoc()返回的是數組。mysql_fetch_object()返回的是object對象。
mysql_insert_id() 取得上一步 INSERT 操作產生的 ID。
mysql_result() 函數返回結果集中一個欄位的值。
mysql_num_fields() 函數返回結果集中欄位的數目。
mysql_affected_rows();返回前一次 MySQL 操作所影響的記錄行數。
mysql_num_rows(mysql_query($sql))獲得結果集中行的數目。
mysql_pconnect() 函數開啟一個到 MySQL 伺服器的持久串連。

mysql_pconnect() 和 mysql_connect() 非常相似,但有兩個主要區別:
1. 當串連的時候本函數將先嘗試尋找一個在同一個主機上用同樣的使用者名稱和密碼已經開啟的(持久)串連,如果找到,則返回此串連標識而不開啟新串連。
2. 其次,當指令碼執行完畢後到 SQL 伺服器的串連不會被關閉,此串連將保持開啟以備以後使用(mysql_close() 不會關閉由 mysql_pconnect() 建立的串連)。
mysql_data_seek(mysql_query($sql),8);獲得結果集中的第8條資料。(mysql_num_rows(mysql_query($sql))和mysql_data_seek(mysql_query($sql),8)在mysql_unbuffered_query($sql)不可以使用。)
mysql_unbuffered_query($sql)和mysql_query($sql)效果差不多,但是
mysql_unbuffered_query($sql)不緩衝。mysql_query($sql)會緩衝查詢的結果。
mysql_close();關閉mysql的最近的連結。
mysql_field_flags(mysql_query($sql),6)返回第六個欄位的表屬性輸出如:not_null primary_key auto_increment 。
mysql_fetch_lengths(mysql_query($sql))返回該條資料的所有欄位的每個欄位的長度。返回的是一個數字組成的數組。
mysql_field_name(mysql_query($sql),3)返回第三個欄位的欄位名。
mysql_field_table(mysql_query($sql),0)返回指定欄位所在的表名。
mysql_free_result(mysql_query($sql)) 函數釋放結果記憶體。
mysql_get_client_info() 函數返回 MySQL 用戶端資訊。
mysql_get_host_info()     取得 MySQL 主機資訊。

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.