*Alessandro Cattelan* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> ha scritto: Date: 31-dic-2007 21.37Subject: Re: [utenti] [BASE] Creazione di una sorta di gestionale per freelance
To: [email protected] <mailto:[email protected]>
Ciao Sandro,
la soluzione che proponi mi incuriosisce e quindi vorrei fare qualche
prova. Ho scaricato il database dal sito SQLite.org
(http://www.sqlite.org/sqlite-3_5_4.zip) e ho installato il driver che
indicavi. Da Base sono riuscito senza problemi a caricare il driver,
ma non capisco come possa collegarsi al database vero e proprio visto
che non gliel'ho indicato... Mi sa che mi sto perdendo in un bicchier
d'acqua. Ad ogni modo, nella barra di stato di Base vedo che come DB
viene segnalato SQLite3 Datasource e poi c'è il nome utente che ho
indicato... Mi manca qualcosa o va bene così?

Ogni consiglio e indicazione mi potrebbe essere molto utile!

Grazie e buon inizio 2008,
Ale.
Perdonami Ale, mi era sfuggito questo messaggio....

Allora: quello che hai scaricato, anche se è di soli 200K, è l' *intero* DB, e direi che non ti serve, a meno che tu non voglia usare SQLite da linea di comando. (proprio perchè è così piccolo è usatissimo: è quasi sicuro che lo stavi inconsapevolmente già usando. Sta dentro Firefox, Acrobat Reader, Php, Python e 1000 altri: http://www.sqlite.org/famous.html http://www.sqlite.org/cvstrac/wiki/wiki?p=SqliteUsers)

Ti serve solo il file per l'ODBC.

Dal file che indichi direi che usi windows, quindi ti do le indicazioni per XP: 1. Scarichi il driver ODBC (http://www.ch-werner.de/sqliteodbc/sqliteodbc.exe) e con doppio click si installa (da sè) 2. Se vai nell'amministrazione degli ODBC (Start- Programmi-Strumenti di Amministrazione- Origine Dati (ODBC) nella scheda "DSN di Sistema" trovi già "SQLite3 Datasource". Se (come mi pare di capire) hai usato questo, allora ti ha messo di default il database in ..\Programmi\OOo\program\sqlite.db
(lo vedi se clicchi "Configura" tra i "DSN di sistema" indicati sopra).


Se però vuoi usare più di un database non va bene, è per questo che ti consigliavo di configurarti dei "DSN Utente".
Ne puoi avere infiniti, ti indico come farne uno.
Sempre dalla "Origine Dati (ODBC)" indicata sopra vai nella tab "DSN utente" e clicchi "Aggiungi". Si apre la finestra "Crea nuova origine dati" e vai a selezionare come driver "SQLite3 ODBC Driver". Fine. Ti apre la finestra "SQLite3 ODBC DSN Configuration" --> come "Data Source Name" indichi il nome che vuoi dare a questo "collegamento" (es. "SQLite Prova"), e come "Database Name" indichi il nome che dovrà avere il tuo DB (es. "dbprova") (sarebbe quello che per default avevi come "sqlite.db"). L'unica accortezza è che devi indicare il nome completo di path (es. "C:\prova\dbprova"), altrimenti te lo va a mettere per default in "..\Programmi\OOo\program\dbprova".

A questo punto hai configurato il collegamento ODBC.... ad un file inesistente! (infatti "dbprova" ancora non esiste) Apri OOo - File - Nuovo - Database - Collega a un database esistente (bugia!) - ODBC - Avanti - "Nome della sorgente dati ODBC del sistema" = Sfoglia e ti vai a cercare come "sorgente dati" il DSN utente che hai appena creato ("SQLite Prova") - Salvi il nuovo database di OOo (cioè xxx.odb) e puoi cominciare a lavorare al tuo database. Partirai ovviamente dalla creazione di una nuova tabella, e poi fai il resto.

Ti ritroverai 2 files: uno, il DB di SQLite, che contiene le tabelle (è quello che abbiamo chiamato "dbprova") ed un altro che è il file di OOo ("xxx.odb") che conterrà queries/formulari/ricerche, nonchè il "collegamento" al DSN Utente.

Quindi se cancelli, sposti ecc, "dbprova" ti ritroverai il file "contenitore" di OOo ("xxx.odb") con queries/formulari/ricerche, ma SENZA TABELLE! Ecco perchè se devi spostare, copiare ecc il tuo database dovrai farlo sempre su entrambi i files (uno che contiene le tabelle ed uno che contiene tutto il resto).


Guarda, ti dico che fino a poco tempo fa non avevo idea di cosa significasse ODBC o DSN, ma se fai poche prove come indicato qua sopra ti renderai conto che è più difficile spiegarlo che farlo in pratica.

Fammi sapere se ti servono altre info.
Ciao


Rispondere a