Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [SQL]Query per MYSQL ok, non per ACCESS

    Buon giorno, ho questo problema.Ho due tabelle(tb e tb_ticket) in db Access
    e le stesse su Mysql.Quello che non mi spiego è perchè se eseguo la query sottostante verso Mysql funziona, invece su Access mi restituisce questo errore "Tipi di dati non corrispondenti nell'epressione criterio".
    I Campi nella tabella tb sono: id,nome,cognome,indirizzo
    Nella tabella tb_ticket sono: id_ticket,ticket, richiedente

    Questo è lo script che utilizzo per eseguire la query su db Access:
    codice:
    $path= "C:/phpdev/www/public/testODBC/" ;
    $db_name= "db1.mdb" ;
    $dsource=$path.$db_name ;
    
    if (!file_exists($dsource) ){
    	die("Il database non esiste") ;
    }
    $cn= new COM("ADODB.Connection");
    $cn->Open("DRIVER={Driver do Microsoft Access (*.mdb)}; DBQ=$dsource");
    
    $query =  "SELECT c.id, c.nome, c.cognome, c.indirizzo, mt.ticket, mt.richiedente 
    	  FROM tb c 
    	  LEFT JOIN tb_ticket mt 
    	  ON mt.richiedente=c.nome 
    	  WHERE mt.ticket ='1'";
    
    $rs= new COM("ADODB.Recordset") ;
    $rs->Open($query,$cn) ;
    
    echo  "	<table border=1>
    	<tr>
    	<th>ID</th>
    	<th>Nome</th>
    	<th>Cognome</th>
    	<th>Indirizzo</th>
    	<th>Ticket</th>
    	<th>Richiedente</th>
    	</tr>\n";  
    	while(!$rs->EOF){
                         echo  "<tr>
    			<td>".$rs->Fields['id']->value."</td>
    			<td>".$rs->Fields['nome']->value."</td>
    			<td>".$rs->Fields['cognome']->value."</td>
    			<td>".$rs->Fields['indirizzo']->value."</td>
                                          <td>".$rs->Fields['ticket']->value."</td>
    			<td>".$rs->Fields['richiedente']->value."</td>
    		</tr>\n";  
    		$rs->MoveNext() ;
    	}
    echo "</table>";
    
    $rs->Close() ;
    $rs->Release() ;
    $rs= null ;
    
    $cn->Close() ;
    $cn->Release() ;
    $cn= null ;
    Dove sbaglio?Grazie mille...

  2. #2
    ho risolto.In pratica era una questione di apice singolo, che in Access mi da problemi.
    Quindi togliendolo ho risolto cosi:

    codice:
    $query =  "SELECT c.id, c.nome, c.cognome, c.indirizzo, mt.ticket, mt.richiedente 
    	  FROM tb c 
    	  LEFT JOIN tb_ticket mt 
    	  ON mt.richiedente=c.nome
    	  WHERE mt.ticket = 2";
    Grazie comunque...Alla prox

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.