2010-07-20 4 views
3

Zend 프레임 워크를 사용하여 oracle 데이터베이스의 데이터에 액세스 할 것입니다. 이전에 데이터베이스 (프레임 워크 외부)와 상호 작용하도록 만들어진 클래스를 가지고 있는데, 이는 (SELECT 문이 아닌) 데이터베이스의 모든 프로 시저 및 함수 호출이며, 변수를 바인드 한 다음 실행해야합니다. Zend_db 구성 요소를 사용하여 oci8 어댑터에 액세스하려고합니다. 누구나 그 방법을 알고 있거나 도움이 될 자습서를 가르쳐 줄 수 있습니다.Zend 프레임 워크에서 oci8과 함께 Zend_db 구성 요소를 사용하는 방법을 아는 사람이 있습니까?

감사

+0

나는, 그러나, 나는 내 자신의 OCI8 어댑터를 썼다으로 찾을 수있는 것도 없다, 당신은 당신이 너무 클래스 Zend_Auth_Adapter_OCI8Login'의 클래스 선언 젠드/인증/어댑터 위치에 Zend_Auth_Adapter_Interface'가 주시기 구현 자신 쓸 수 있습니다 수업에 원하는 이름을 붙이세요. –

답변

1

는 빠른 Google 검색은 오라클에서 this PDFthis tutorial을 얻었다. Oracle 튜토리얼에서는 변수를 바인드하고 저장 프로 시저를 실행하는 방법을 보여줍니다. 아마도 그것들은 당신이 필요로하는 것을 가지고 있습니다.

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"]; 
관련 문제