allora, con questo script ho creato la prima versione del db: https://gist.github.com/esperlu/9437...ysql2sqlite-sh
in pratica, dopo aver fatto il dump del mysql, si lancia quello script sh.
quello script crea il corrispettivo sqlite3.

dopo di che ho fatto come mi hai indicato.
per ora ho fatto così:
- cancello tutti i record
- prendo quelli da mysql
- li aggiungo:
Codice PHP:
class ConnessioneMobile {

    private 
$pdo;

    public function 
__construct() {
        try {
            
$this->pdo = new PDO('sqlite:db.sqlite');
        } catch (
PDOException $e) {
            echo 
'<p class="error">' $e->getMessage() . '</p>';
            die();
        }
    }

    public function 
movimenti($rows) {
        try {
            
$delete 'DELETE FROM movimenti';
            
$prepareDelete $this->pdo->prepare($delete);
            
$prepareDelete->execute();
            foreach (
$rows as $r) {
                
$insert 'INSERT INTO movimenti VALUES(?,?,?,?,?,?,?,?,?)';
                
$arr = array(
                    
$r['mov_id'], $r['mov_tipo'], $r['mov_valore'], $r['mov_causale_fk'],
                    
$r['mov_conto_fk'], $r['mov_data'], $r['mov_note'], $r['mov_utente_fk'],
                    
$r['mov_aggiunta']
                );
                
$prepareInsert $this->pdo->prepare($insert);
                
$prepareInsert->execute($arr);
            }
        } catch (
PDOException $e) {
            echo 
$e->getMessage();
        }
    }


alla funzione passo l'array con i record.

se lo setto ogni sera potrei anche pensare di aggiungere solo i record del giorno.
però vorrei anche avere la possibilità di aggiornare i record a mano, evitando doppioni.
quindi:
- è meglio controllare record per record se già esiste e in caso inserirlo?
- oppure cancellare e rimettere?

purtroppo penso che sqlite non ha l'istruzione ON DUPLICATE KEY di mysql.