Query Update OLEDBC

di il
4 risposte

Query Update OLEDBC

Buon Giorno a tutti sto cercando di fare funzionare una query di update su un vecchio database MDB(access) poi sucessivamente dovro usarlo in Android. Ho iniziato cosi ma logicamente non funziona non so come fare eseguire la query
<?php

/* La query SQL, le parentesi quadrate sono
necessarie solo quando i nomi dei campi presentano spazi */
$query="UPDATE tabripa SET costo=10000 WHERE Nbusta=70113" ;

/* I parametri di connessione */
$path= "D:/OneDrive/Programmazione/Android/" ;
$db_name= "dati.mdb" ;
$dsource=$path.$db_name ;
$cn_string="Provider=Microsoft.Jet.OLEDB.4.0;" ;
$cn_string.="Data Source=$dsource;" ;
$cn_string.="Jet OLEDB:Database Password=gmpa";


$response = array();

/* La connessione */
if (!file_exists($dsource) ){

die("Il database non esiste") ;

}
$cn= new COM("ADODB.Connection");
$cn->open($cn_string) ;

/* Istanziamo un oggetto Recordset
e inviamo la query attraverso
il metodo Open() */
$rs= new COM("ADODB.Recordset") ;
$rs->Execute($query) ;





?>

4 Risposte

  • Re: Query Update OLEDBC

    Ho fatto cosi e ha funzionato , pero secondo voi devo chiudere qualcosa? la connessionw o altro?
    <?php
    
    /* La query SQL, le parentesi quadrate sono
    necessarie solo quando i nomi dei campi presentano spazi */
    $query=" UPDATE tabripa SET costo = 10000 WHERE Nbusta = 70113" ;
    
    /* I parametri di connessione */
    $path= "D:/OneDrive/Programmazione/Android/" ;
    $db_name= "dati.mdb" ;
    $dsource=$path.$db_name ;
    $cn_string="Provider=Microsoft.Jet.OLEDB.4.0;" ;
    $cn_string.="Data Source=$dsource;" ;
    $cn_string.="Jet OLEDB:Database Password=gmpa";
    
    
    $response = array();
    
    /* La connessione */
    if (!file_exists($dsource) ){
    
    die("Il database non esiste") ;
    
    }
    $cn= new COM("ADODB.Connection");
    $cn->open($cn_string) ;
    
    
    $rs = $cn->Execute("$query");
    
    
    
    
    ?>
  • Re: Query Update OLEDBC

    Usare un database di Access (MDB) su Android ?..
    Non mi risulta che sia possibile.
    Hai verificato prima?
  • Re: Query Update OLEDBC

    gibra ha scritto:


    Usare un database di Access (MDB) su Android ?..
    Non mi risulta che sia possibile.
    Hai verificato prima?
    non direttamente ma si può fare con volley
  • Re: Query Update OLEDBC

    Mi rispondo da solo magari puo essere utile a altri:
    <?php
    if( isset($_POST['Nbusta'] ) && isset($_POST['costo']) ) {
        $Nbusta=$_POST['Nbusta'];
        $costo=$_POST['costo'];
    	
    	
    /* La query SQL, le parentesi quadrate sono
    necessarie solo quando i nomi dei campi presentano spazi */
    $query=" UPDATE tabripa SET costo = $costo WHERE Nbusta = $Nbusta" ;
    $querycontrollo ="select * from tabripa where  Nbusta = $Nbusta" ;
    
    /* I parametri di connessione */
    $path= "D:/OneDrive/Programmazione/Android/" ;
    $db_name= "dati.mdb" ;
    $dsource=$path.$db_name ;
    $cn_string="Provider=Microsoft.Jet.OLEDB.4.0;" ;
    $cn_string.="Data Source=$dsource;" ;
    $cn_string.="Jet OLEDB:Database Password=gmpa";
    
    
    $response = array();
    
    /* La connessione */
    if (!file_exists($dsource) ){
    
    die("Il database non esiste") ;
    
    }
    $cn= new COM("ADODB.Connection");
    $cn->open($cn_string) ;
    
    $rs = $cn->Execute("$query");
    $rs = $cn->Execute("$querycontrollo");
    
    if (!$rs->EOF) {
        // looping through all results
        // products node
        $response["tabripa"] = array();
        
        while (!$rs->EOF) {
            // temp user array
            $product = array();
            $product["Nbusta"] = $rs -> Fields["Nbusta"]->value;
            $product["costo"] = $rs -> Fields["costo"]->value;
    		//$product["descrizione"] = $rs -> Fields("Descrizione");
    		$product["pVendita"] = $rs -> Fields["vendita"]->value;
    		
           
    
    	    $rs -> MoveNext();
    
    
            // push single product into final response array
            array_push($response["tabripa"], $product);
        }
        // success
        $response["success"] = 1;
    
        // echoing JSON response
        echo json_encode($response);
    } else {
        // no products found
        $response["success"] = 0;
        $response["message"] = "No products found";
    
        // echo no users JSON
        echo json_encode($response);
    }
    
    /* Chiusura Recordset (da non farsi nelle query di comando) */
    $rs->Close() ;
    
    /* Pulizia dell’oggetto Recordset */
    //$rs->Release() ;
    //$rs= null ;
    
    }
    
    ?>
Devi accedere o registrarti per scrivere nel forum
4 risposte