过客生活

品味生活

初探php有感!

       这段时间还是比较忙的,不过还是抽出了一些时间研究了java和php两种bs开发的语言(有的人把java叫做平台,我这里还习惯叫语言)。个人习惯在firebird上进行系统的开发,firebird提供的jdbc在java上调用还是很少碰到问题的,在php上就比较悲惨了,一个id产生器在php中的调用半天不返回id,这里我用的是pdo,php用pdo抽象了数据库的操作(在接口函数上),比单独的调用不同数据库的函数要好点我觉得。就是这个pdo始终不能返回id,实在郁闷,两个晚上了,搜索的好多也没有得到解决,用尽了所有php文档提供的例子也不行,实在是失望。当然用firebird/interbase的专门函数可以得到id,但是心里还是不爽,从firebird和interbase的发展上来看,两者将彼此远离,这样原来比较兼容的数据库api也会慢慢的不再兼容了。
    暂时不敢说是pdo的bug,再找找资料看看。不过对使用php的信心却受到了不小的打击。
以下是我用pdo测试的代码:
CYGETDISHTEMPLETID是包装了id产生器CYdishtempletid的存储过程
<?
 try {
   $dbh = new PDO ("firebird:dbname=localhost:C:/eatery2/jd/data/MISJDDEV.GDB", "SYSDBA", "masterkey");
   //$dbh->setAttribute(PDO::ATTR_AUTOCOMMIT, PDO::ERRMODE_EXCEPTION);
$sql = 'select * from CYGETDISHTEMPLETID;';
//$sql='SELECT GEN_ID(CYdishtempletid, 1) from RDB$DATABASE;';
$sth = $dbh->prepare($sql);
$sth->execute();
$result = $sth->fetchAll();
print_r($result);

    $dbh = null;  
  } catch (PDOException $e) {
  print "Error!: " . $e->getMessage() . "<br/>";
  die();
  }
?>
如果谁知道问题出在哪里希望告诉我,谢谢

posted on 2007-01-24 23:58 过客 阅读(680) 评论(4)  编辑 收藏 引用 所属分类: 技术

评论

# re: 初探php有感! 2007-01-26 23:10 Flash动画

look  回复  更多评论   

# re: 初探php有感! 2007-05-27 09:51 tr

我也刚开始玩InterBase+PDO,因为是要配合模板使用,原来都是用ibase_connect的。

我发现,问题可能在于,针对InterBase的fetchAll会无法读出返回的第一个数据行,或者根本就是返回不了第一个数据行。

我有一个例子:http://www.rsywx.net/smarty/test01.php,很明显,在SELECT需要返回的5个数据中,只有后四个得以显示。而MySQL就不存在这个问题。

我也在进一步调试中。  回复  更多评论   

# re: 初探php有感! 2007-05-28 11:12 过客

@tr
谢谢你给出的例子,现在不用pdo了,改用adodb了,用adodb问题就基本解决了  回复  更多评论   

# re: 初探php有感! 2007-10-13 10:18 小成

adodb也是用ibase连FB的  回复  更多评论   

只有注册用户登录后才能发表评论。
<2006年10月>
24252627282930
1234567
891011121314
15161718192021
22232425262728
2930311234

导航

统计

常用链接

留言簿(2)

随笔分类

随笔档案

朋友

搜索

最新评论

阅读排行榜

评论排行榜