Manuel PHP

Précédent

 

Suivant

OCINewDescriptor

OCINewDescriptor -- Initialise un nouveau pointeur vide de LOB/FILE (LOB, par défaut)

Description

string OCINewDescriptor(int connection, int [type]);

OCINewDescriptor() alloue l'espace nécessaire pour stocker un descripteur, ou un pointeur de LOB. Les valeurs acceptées pour type sont OCI_D_FILE, OCI_D_LOB, OCI_D_ROWID.

Exemple 1. OCINewDescriptor

<?php   
    /* Ce script est fait pour être appelé depuis un formulaire HTML.
     * Il attend les variables $user, $password, $table, $where, et $commitsize,
     * données par le formulaire. Le script efface 
     * les lignes selectionnées avec ROWID est valide les transactions 
     * à chaque jeu de $commitsize lignes. (Attention : il n'y plus d'annulationÖ*/
    $conn = OCILogon($user, $password);
    $stmt = OCIParse($conn,"select rowid from $table $where");
    $rowid = OCINewDescriptor($conn,OCI_D_ROWID);
    OCIDefineByName($stmt,"ROWID",&$rowid);   
    OCIExecute($stmt);
    while ( OCIFetch($stmt) ) {      
       $nrows = OCIRowCount($stmt);
       $delete = OCIParse($conn,"delete from $table where ROWID = :rid");
       OCIBindByName($delete,":rid",&$rowid,-1,OCI_B_ROWID);
       OCIExecute($delete);      
       print "$nrows\n";
       if ( ($nrows % $commitsize) == 0 ) {
           OCICommit($conn);      
       }   
    }
    $nrows = OCIRowCount($stmt);   
    print "$nrows deleted...\n";
    OCIFreeStatement($stmt);  
    OCILogoff($conn);
?>  
   

Précédent

Sommaire

Suivant

OCIRollback

Chapitre

OCIRowCount

Hébergé
par