Post by RobertoAsembrava tutto facile ma poi. Allora caro robertoA ho eseguito tutto fino
alla creazione del dns. Quando cerco di collegare il file di prova tramite
odbc da access mi dice " impossibile effettuare la connessione utilizzandi
i parametri dell'origine dati su file inseriti.Salvare su file non
verificato?". Allora naturalmente quando chiedo il collegamneto mi chiede
la username la password e il ruolo. Ho provato ad inserire la user e la
pass che ho messo nel profilo, NIENTE, ho provato ad inserire quella che
ho messo nel database NIENTE ho provato a mettere gli stessi dati in tutti
e due i profili NIENTE. Faccio il test da odbc tutto ok faccio il test dal
database ibexpert tutto ok
non riesco ad entrare da access. Altra cosa fondamentale come converto le
tabelle access nel nuovo db. Grazie e scusa la rottura penso però come ho
già visto e di interesse anche per altri
Fermo la'
Prima cosa da verificare, sul dsn appena creato c'e' un tasto per testare
che la configurazione sia corretta
Premendo il tasto del 'prova connessione' cosa ti risponde?
Il dsn e' corretto oppure no?
Nome utente e password devono esserci gia' sull'impostazione del dsn e se
non ce li metti, non funziona il 'prova connessione'
Quindi il primo step e' ottenere il 'prova connessione' funzionante
Una volta che sei sicuro di questo allora puoi passare al tentativo di
collegare le tabelle da dentro Access
Non dovrebbe chiederti niente relativamente a nome utente e password, a meno
che nel dsn non siano impostate
Ricordati di creare almeno un indice nelle tabelle dentro Firebird
Una volta che sei riusito ad far parlare Access con Firebird, usando un
mini-db di test puoi pensare a tentare la conversione del tuo db Access in
formato Firebird (o altro)
Per la conversione, io farei una procedura che, dopo essersi collegata al db
sorgente, ciclando tabella per tabella, vada a vedere il nome ed il tipo di
ogni singolo campo
A questo punto, supponiamo di essere alla prima tabella (Articoli), primo
campo (codice_articolo), potrai avviare una funzione che ti crea il campo
sulla tabella del db destinazione
Se la tabella sul db destinazione non esiste ovviamente bisogna prima
crearla
Il tutto a colpi di istruzioni sql usando la sintassi classica
CurrentDb.execute "create table ARTICOLI (codice_articolo varchar(50),
descrizione_articolo varchar(200) )"
Questo per la crezione della struttura, stessa solfa per il passaggio dati,
vai di Do - Loop ciclando fra tutte le tabelle e per ogni tabella dal primo
campo all'ultimo, ti crei la tua bella stringa da sparare al db server e poi
gli dai giu' di
CurrentDb.execute "insert into ARTICOLI (codice_articolo,
descrizione_articolo) values ("abc123","Articolo di gran moda")"
E' inizialmente un po' laborioso inizialmente ma lo fai una sola volta e poi
te lo ritrovi buono per tutte le altre tue necessita' di travaso dati, da
qualsiasi tipo db a qualsiasi altro tipo db
Personalmente ti sconsiglio di evitare da subito i vari wizard e
auto-importazioni che per una ragione o per un'altra non fanno mai quello
che desideri
Ne ho provate una gran quantita' prima di arrivare a questa conclusione, poi
ho benedetto quella giornata di lavoro impiegata per creare la mia procedura
di importazione, che lavora esattamente come voglio io e soprattutto che
posso modificare in qualsiasi momento per adattarsi a necessita' diverse da
quelle iniziali, e per questo ti consiglio prima di prendere un po' di
confidenza col nuovo db e poi di tenerlo stretto ma stretto perche' vale
tanto oro quanto pesa (purtroppo non pesa niente e quindi il paragone non e'
valido ma l'intento della frase e' chiaro)
Ad esempio nella conversione di un progetto la tabella pagamenti dal sistema
vecchio diventavano due tabelle la pagamenti_testate e la pagamenti_righe
nel sistema nuovo
Alcuni campi della tabella sorgente venivano usati per riempire il record
della pagamenti_testate, altri campi della tabella sorgente venivano usati
per riempire la pagamenti_righe
Semplice da fare se hai il codice sottomano, impossibile anche solo pensarla
con un sistema di importazione che prende da qua e butta di la solamente con
la conversione da un tipo all'altro
Ciao
RobertoA
allora prima ho passato tutti i test ma non funzionava ora sto riprovando e ho visto che il test di odbc mii da errore