Italian community of Lazarus and Free Pascal

Programmazione => Databases => Topic aperto da: kelvo - Novembre 02, 2011, 09:17:36 pm

Titolo: come si apre un sqllite
Inserito da: kelvo - Novembre 02, 2011, 09:17:36 pm
come si apre un sqllite con i componenti standard?
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Novembre 03, 2011, 08:34:05 am
Hai dato un occhiata all'esempio che ti ho detto di guardare?
Ovvero: www.lazaruspascal.it/esempi/Sqlite.zip
Titolo: Re:come si apre un sqllite
Inserito da: kelvo - Novembre 03, 2011, 09:33:03 am
Non trova una dll
inoltre non trova un componente x quello
io volevo fare un qualcosa che giri su win linux osx
senza impazzire nelle installazioni, carico il progetto e compilo ...
se devo aggiungere una serie di componenti aggiuntivi che magari vanno solo solo su una piattaforma e' un casino
lazarus supporta nativamente sqllite dalla 9.32 sbaglio?
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Novembre 03, 2011, 10:31:27 am
Ma nei file zippati che ti ho detto cerano tutte le dll per farlo funzionare sotto windows.

Da quello che ne so io, le dll servono con i pacchetti standard di sqlite. Un alternativa che mi sembra supporti quello che vuoi tu è usare ZeosLib, ma non so se è supportato su OsX mentre su windows e linux ne sono sicuro.

Fai una prova
Titolo: Re:come si apre un sqllite
Inserito da: otp159 - Gennaio 18, 2012, 04:33:28 pm
Ciao,sto cercando anche io di imparare ad usare sqlite con lazarus. Riesco a collegarmi e leggere il DB tramite il DBGrid ma non riesco a fare nessun update del Data Base. Ogni volta che riapro il programma i dati rimangono quelli originari.
Cosa sbaglio?
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Gennaio 18, 2012, 04:41:05 pm
Non sbagli nulla, prima di chiudere la connessione al DB esegui

NomeOggettoTSQLTransaction.Commit:=TRUE;

oppure


NomeOggettoTSQLTransaction.CommitRetaining:=TRUE;

Non ricordo mai a memoria qual'è, li provo sempre entrambi per ricordarmelo  ;)

Fammi sapere
Titolo: Re:come si apre un sqllite
Inserito da: otp159 - Gennaio 18, 2012, 04:46:40 pm
Ma nell'esempio postato è già presente un'istruzione simile:

procedure TForm1.FormHide(Sender: TObject);
begin
     SQLQuery1.ApplyUpdates;
     SQLQuery1.Close;
     MyTransaction.CommitRetaining; //mi salva le modifiche effettuate
     MyConn.Close;
end;                                 

Se invece inserisco:
MyTransaction.CommitRetaining := true;

Mi da errore....
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Gennaio 19, 2012, 08:13:43 am
Per risolvere il problema impostare la proprieta dell'oggetto TSQLQuery UpdateMode=upWhereAll
Titolo: Re:come si apre un sqllite
Inserito da: otp159 - Gennaio 19, 2012, 01:32:04 pm
Grandeee! Grazie mille!!! Ho risolto, con questo oggetto è semplicissimo gestire le tabelle di dati per applicazioni anche complesse.

 :D
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Gennaio 19, 2012, 01:56:18 pm
Già ;)
Titolo: Re:come si apre un sqllite
Inserito da: graffaele - Marzo 07, 2012, 01:25:50 pm
Hai dato un occhiata all'esempio che ti ho detto di guardare?
Ovvero: www.lazaruspascal.it/esempi/Sqlite.zip

ciao a tutti, mi sono presentato un po' di tempo fa ma solo ora sto iniziando a dare un'occhiata a Lazarus.

La mia priorità è sviluppare software collegati a DB, quindi sto cercando di capire se SQLite può andare, ma aprendo questo esempio mi esce il messaggio "Unable to find the unit of component class "TSQlite3Connection". Ho provato ad installare il pacchetto da components\sqlite, ma non ci riesco (mi dice che non trova la unit sqlite3ds).

Qualcuno può aiutarmi?
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Marzo 07, 2012, 01:30:51 pm
Prova installando il package contenuto in components\sqldb
Titolo: Re:come si apre un sqllite
Inserito da: graffaele - Marzo 07, 2012, 03:40:24 pm
Prova installando il package contenuto in components\sqldb

come ho scritto ci ho provato ma mi esce quel messaggio di errore...
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Marzo 07, 2012, 03:51:10 pm
Prima hai rimosso le dipendenze dell'altro package?!

Package -> Pacchetto Grafico -> Tasto destro del mouse sul package incriminato e poi Disinstalla. Fai il rebuild di lazarus e poi prova a reinstallarlo!
Titolo: Re:come si apre un sqllite
Inserito da: graffaele - Marzo 07, 2012, 04:10:42 pm
leggendo sul forum inglese pare che altri abbiano avuto lo stesso problema con la versione a 64 bit: ho disinstallato tale versione ed ho installato quella a 32 bit ed effettivamente il componente per SQLite era già presente senza voverlo installare ed ora apro l'esempio senza problemi! ^_^

grazie comunque per l'attenzione
Titolo: Re:come si apre un sqllite
Inserito da: xinyiman - Marzo 07, 2012, 04:32:49 pm
Grazie a te della segnalazione. Buon lavoro!  ;)