Autore Topic: comportamento strano in un record  (Letto 3187 volte)

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: comportamento strano in un record
« Risposta #15 il: 04 Aprile 2008, 15:48:01 »
La sequenza che andrebbe usata è questa:

1 Connessione.OPEN
2 Connessione.BEGIN
3 Risultato.Create/Edit
4 Risultato.Update
5 Connessione.COMMIT
6 ... ripetere dal punto 2 per le transazioni da eseguire
7 Connessione.CLOSE
Visita il mio sito personale: http://www.leonardomiliani.com

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #16 il: 04 Aprile 2008, 15:52:14 »
@leo72
La sequenza che ho usato è proprio quella che hai scritto tu, ovvero all'interno della stessa SUB:

Connessione.OPEN

Connessione.BEGIN
     creo il nuovo record vuoto
     Risultato.Update
Connessione.COMMIT

Connessione.BEGIN
     modifico i singoli campi
     Risultato.Update
Connessione.COMMIT

Connessione.CLOSE

ma come ho spiegato sopra, non funziona solo per i campi integer.

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: comportamento strano in un record
« Risposta #17 il: 04 Aprile 2008, 16:04:32 »
Tempo fa venne fuori, sempre in questo forum, dello strano modo di gestire i tipi di dati da parte di SQLite3. Se non mi ricordo male, fu detto che internamente sono tutti trattati come stringhe.
Prova a trasformare i dati in stringhe e poi a riconvertirli in fase di lettura (io faccio di solito così).
Visita il mio sito personale: http://www.leonardomiliani.com

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #18 il: 04 Aprile 2008, 16:21:07 »
Ok, ci provo, grazie!

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #19 il: 04 Aprile 2008, 16:32:09 »
Per coloro che come me non sono mai riusciti ad installare la versione 2.4 di gambas2 da sorgenti, riporto un repository da aggiungere alla lista del sources.list in modo da poterlo installare nel modo standard, previsto per i non addetti ai lavori!

deb http://azores.linex.org/gambas-other/ gutsy main

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: comportamento strano in un record
« Risposta #20 il: 04 Aprile 2008, 17:31:14 »
Per leo...

in effetti, l'analisi su sqlite l'avevo fatta io, dopo una richiesta di implementazione dello stesso in pgDesigner.

Come prima, confermo tutto e controfirmo.

E, comunque, l'idea che qualcosa non funzioni nella libreria gambas potrebbe anche essere realistica.

Ciao

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #21 il: 04 Aprile 2008, 17:37:34 »
Confermo quanto è stato detto ora ed in passato.
Ho trasformato tutti i campi del database sqlite3 in formato testo, tranne il campo contatore nel quale non scrivo mai ed è autoincrementante.
Con questa modifica tutti i problemi sono risolti.

Offline md9327

  • Moderatore
  • Senatore Gambero
  • *****
  • Post: 2.840
    • Mostra profilo
Re: comportamento strano in un record
« Risposta #22 il: 04 Aprile 2008, 18:55:33 »
mmmmmmmmmh...

bè, i miei complimenti per la risoluzione, almeno per ora la cosa funziona.

In ogni caso, spero di poter fare qualche prova anche io con sqlite, poi magari scrivo due righe sui risultati.

Ciao!

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #23 il: 04 Aprile 2008, 19:47:37 »
Attenderò fiducioso le tue valutazioni in merito, e come si conviene alle persone per bene:   Obbligato Vossignoria!

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: comportamento strano in un record
« Risposta #24 il: 04 Aprile 2008, 19:49:26 »
Non vorrei che la differenza tra come viene gestito il dato da Gambas (integer o string) e come invece viene effettivamente memorizzato in SQLite (stando a quanto "scoperto") possa generare il problema.
Forse il driver di Gambas dovrebbe essere rivisto.
Io proporrei per segnalare la cosa in mailing-list e sentire la risposta dei responsabili del progetto.
Visita il mio sito personale: http://www.leonardomiliani.com

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.255
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: comportamento strano in un record
« Risposta #25 il: 06 Aprile 2008, 10:11:28 »
excuse me intervengo in ritardo nel thread. la mia personale esperienza in tema db+gambas è che a volte, ad alcuni ns errore di codice, si sommino bug di gambas o di sqlite3, difficili da interpretare e neutralizzare. unico consiglio, provare non solo una strada ma + strade, con il codice: molte volte ho risolto la query di inserimento con un drastico connessione.exec(sql).

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #26 il: 06 Aprile 2008, 18:35:38 »
@andy60
Hai detto:

Questa non l'ho proprio capita. Se sto lavorando su un record in EDIT ed i campi testo vengono correttamente memorizzati, ma i campi integer invece no, non capisco proprio come il comando che dici mi aiuterebbe a risolvere la questione.
Anche perchè non saprei proprio come applicarlo!

Offline leo72

  • Amministratore
  • Senatore Gambero
  • *****
  • Post: 2.163
    • Mostra profilo
    • http://www.leonardomiliani.com
Re: comportamento strano in un record
« Risposta #27 il: 07 Aprile 2008, 07:22:06 »
Il metodo Exec dell'oggetto Connection esegue stringhe in linguaggio SQL, che devi conoscere.
Scrivere un comando in SQL equivale ad usare altri metodi dell'oggetto Connection.

Ad esempio:
Connection.Exec("SELECT * FROM nome_tabella WHERE nome = 'mario'")
equivale a
Connection.Find("nome_tabella","nome = &1","mario")

Probabilmente i metodi Find, Create, Edit ecc... eseguono conversioni e/o altre operazioni che potrebbero in qualche modo disturbare le transazioni dei dati da/per il DB. Anch'io spesso mi sono trovato meglio ad usare un Exec.
Visita il mio sito personale: http://www.leonardomiliani.com

g.paolo

  • Visitatore
Re: comportamento strano in un record
« Risposta #28 il: 07 Aprile 2008, 07:28:20 »
Ora è tutto chiaro! Grazie.

Offline andy60

  • Senatore Gambero
  • ******
  • Post: 1.255
    • Mostra profilo
    • https://www.linkedin.com/in/andbertini
Re: comportamento strano in un record
« Risposta #29 il: 07 Aprile 2008, 09:56:39 »
scusami non avevo tempo x postare un esempio, grazie Leo