跨db 查詢 mysql mysql跨資料庫查詢

2021-10-17 23:28:05 字數 1483 閱讀 1487

mysql_fetch_row,這個函式是從結果集中取一行作為列舉資料,從和指定的結果標識關聯的結果集中取得一行資料並作為陣列返回。每個結果的列儲存在乙個陣列的單元中,偏移量從 0 開始。 注意,這裡是從0開始偏移,也就是說不能用欄位名字來取值,只能用索引來取值,所以如下**是取不到值的:

while($row = mysql_fetch_row($res)) //這裡的$row['cid'] 取不到值。

mysql_fetch_array,從結果集中取得一行作為關聯陣列,或數字陣列,或二者兼有,除了將資料以數字索引方式儲存在陣列中之外,還可以將資料作為關聯索引儲存,用欄位名作為鍵名。 也就是說他得到的結果像陣列一樣,可以用key或者索引來取值,所以

while($row = mysql_fetch_array($res))//這裡$row['cid'],$row[1]都能得到相應的值。

mysql_fetch_object,顧名思義,從結果集中取得一行作為物件,並將欄位名字做為屬性。所以只有這樣才能取到值

while($row = mysql_fetch_object($res)) //$row[1]這樣是取不到值的

補充一點:

mysql_fetch_array函式是這樣定義的:array mysql_fetch_array ( resource result [, int result_type]),返回根據從結果集取得的行生成的陣列,如果沒有更多行則返回 false。

mysql_fetch_array() 中可選的第二個引數 result_type 是乙個常量,可以接受以下值:mysql_assoc,mysql_num 和 mysql_both。其中:

1、mysql_fetch_assoc($result)==mysql_fetch_array($result,mysql_assoc);

2、mysql_fetch_row($result)==mysql_fetch_array($result,mysql_num);

所以mysql_fetch_array()函式在某種程度上可以算是mysql_fetch_row()與 mysql_fetch_assoc()的集合。另外,mysql_fetch_array()另外還有mysql_both引數,將得到乙個同時包含關 聯和數字索引的陣列。

在來說句 $row = $db->fetch_array($query);

$db是人資料庫操作類,$db->fetch_array($query),fetch_array($query)是那個db類裡的方法,$row = $db->fetch_array($query)這句的意思是從記錄集$query中得到資料庫中的一行記錄。

不用類可這樣實現

$conn=@mysql_connect($host,$user,$pass);

@mysql_select_db($database,$conn);

$query=mysql_query($sql);

while($row=mysql_fetch_array($query)){

$rows=$row;

DB2跨庫查詢表資料

1 登入db2資料庫後,查詢當前使用者的使用者模式 select current schema from sysibm.dual 3 建立伺服器 server create server tempserver type db2 udb version 9.7 authorization remote...

DB2資料庫聯邦 跨庫查詢

在本地資料庫 sample 中直接查詢遠端資料庫remotedb的表 tab test 本地資料庫 sample db2licm l 產品名 db2 express c 許可證型別 無擔保 到期日期 永久 產品標識 db2expc 版本資訊 10.5 最大 cpu 數目 2 最大記憶體量 gb 16...

MySQL Mysql模糊查詢like提速優化

一般情況下like模糊查詢的寫法為 field已建立索引 select column from table where field like keyword 上面的語句用explain解釋來看,sql語句並未用到索引,而且是全表搜尋,如果在資料量超大的時候,可想而知最後的效率會是這樣 對比下面的寫法...