有谁知道如何在Zend框架中使用Zend_db组件和oci8?

时间:2010-07-20 09:28:03

标签: php oracle zend-framework

我将使用Zend框架从oracle数据库访问数据。以前我有我为了与数据库交互而构建的类(在框架之外),那些都是数据库中的过程和函数调用(不是SELECT语句),我必须绑定变量然后执行它们。我希望使用Zend_db组件来访问oci8适配器。任何人都知道如何做到这一点,或者可以指向我的教程,这将有所帮助。

由于

2 个答案:

答案 0 :(得分:1)

Google快速搜索从Oracle获得了this PDFthis tutorial。 Oracle教程展示了如何绑定变量和执行存储过程。也许那些有你需要的东西。

答案 1 :(得分:0)

    $dbAdapterConfig = array(
        'driver' => 'Oci8',
        'connection_string' => '192.168.0.70/pep',
        'username' => 'xx',
        'password' => 'xx',
        'character_set' => 'AL32UTF8',
        'platform_options' => array('quote_identifiers' => false)
    );

    $adapter = new \Zend\Db\Adapter\Adapter($dbAdapterConfig);
    $result = $adapter->query('SELECT COUNT(*) as CNT FROM B2B_INFO_SHOP', Adapter::QUERY_MODE_EXECUTE);

    if ($result)
        echo $result->current()->CNT, "\n";

    $sql = new Sql($adapter);
    $select = $sql->select()
        ->from('B2B_INFO_SHOP');
    $select->where(array('SHOPID' => 123));
    $selectString = $sql->getSqlStringForSqlObject($select);
    echo $selectString, "\n";

     $statement = $sql->prepareStatementForSqlObject($select);
    $result = $statement->execute();
    if ($result)
      echo $result->current()["SHOPNAME"];