private DAO() {  
        JdbcConnectionSource connectionSource = null;
        try {
            File f = new File(db_name);            
//            if(f.exists()) f.delete();
//             create our data source            
            connectionSource = new JdbcConnectionSource(DATABASE_URL);             
            setupDatabase(connectionSource);   
            
            if(f.length()<=0){ //si la db no existía, creamos las tablas
                createsTables(connectionSource);
                createsAllMovimientos();
            }
        } catch (SQLException ex) {
            Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
        } catch (Exception ex) {
            Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
        } finally {
            // destroy the data source which should close underlying connections
            if (connectionSource != null) try {
                connectionSource.close();
            } catch (SQLException ex) {
                Logger.getLogger(DAO.class.getName()).log(Level.SEVERE, null, ex);
            }            
        }
    }