日期:2014-05-16  浏览次数:20478 次

如何使用com组件的函数将多字段记录集存到多维数组里
php5.4使用com连接到phd数据库,此数据库特殊,表名,字段不好写,是honeywell的数据库。com查询返回多条记录,且多个字段,我想对某个字段进行算术运算,不知道如何操作,本人新手,上网查资料说是把记录集存到多维数组里,苦于不会php,请高手帮帮忙!谢谢!
我打个比方,查询0601班级的学生成绩,返回多条记录,每条记录包含:班级、学号、姓名、科目(语文)、成绩字段。如何使用com组件的函数将记录集存到多维数组里,单纯操作数组,我差不多会。
  
 $conn = new COM("ADODB.Connection"); 
  $connstr="...略了";
  $conn->Open($connstr);
  $starttime="2014-03-20 08:30:00";
  $sql="Select banji,sno,name,kemu,chengji FROM stu_cj WHERE  banji='0601' AND kemu='yuwen'";
  $stmt=$conn->Execute($sql);
下面如何使用com函数将记录集$stmt存储到多维数组,并操作数组
------解决方案--------------------
不知道phd数据库是什么
不过既然可以用 ADODB.Connection 连接,显然就没有什么大问题了
可以写作
$stmt = $conn->Execute($sql);
while(! $stmt->eof) {
  $res[] = arraay(
    'banji' => $stmt->fields['banji']->value, 
    'sno' => $stmt->fields['sno']->value,
    'name' => $stmt->fields['name']->value,
    'kemu' => $stmt->fields['kemu']->value,
    'chengji' => $stmt->fields['chengji']->value,
  );
  $stmt->MoveNext();
}
总之与 asp 的写法基本一致

另外也可写用 obcd 函数组进行操作