Autore Topic: oggetti in SQLite  (Letto 1419 volte)

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
oggetti in SQLite
« il: 10 Maggio 2011, 17:42:06 CEST »
0
Ho un dubbio amletico.... o_O
Devo progettare una base di dati. Sto ora procedendo a determinare i nomi delle colone delle mie tabelle del DB..
Ad esempio, ho un oggetto "posizione" che contiene lat e lon di un evento. Ora:
* è meglio inserire due colonne, una lat e una long
* oppure posso inserire nel database direttamento l'oggetto? e in tal caso: come faccio?

Stesso problema per l'oggetto "Date" che contiene una data... insomma cosa è meglio fare? Limitarsi a salvare stringhe interi e booleani oppure è meglio inserire direttamente gli oggetti nel db?

Ciao, datemi le vostre opinioni  ;-) :-P

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:oggetti in SQLite
« Risposta #1 il: 11 Maggio 2011, 09:45:24 CEST »
0
In maniera generale, anche con il concetto di ORM, la tabella viene mappata con un oggetto (ma porla così è pure restrittivo); se stessimo parlando di database ad oggetti (tecnologia nosql, per capirci, o similare) avrebbe senso inserire direttamente gli oggetti nel db.
In questo caso hai un semplice dbms relazionale, che suppporta i tipi base, comuni a tutti i dbms, per cui credo che lui si aspetti che tu inserisca gli stessi tipi base che lui supporta; a meno che non voglia inserire tanti blob quanti sono gli oggetti che vuoi inserire.
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
Re:oggetti in SQLite
« Risposta #2 il: 11 Maggio 2011, 15:25:34 CEST »
0
Ti ringrazio! Quindi secondo te è meglio che faccio uno store di una stringa del tipo "2011/05/11" ?

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:oggetti in SQLite
« Risposta #3 il: 11 Maggio 2011, 17:53:25 CEST »
0
Ti ringrazio! Quindi secondo te è meglio che faccio uno store di una stringa del tipo "2011/05/11" ?

per la data usa il simpledateformatter.
ti crei un tuo format, come quello che hai scritto:
"YYYY/MM/dd" e poi lo usi per scrivere e parsare la stringa
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
Re:oggetti in SQLite
« Risposta #4 il: 12 Maggio 2011, 09:28:25 CEST »
0
Grazie, ora provo!!!

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:oggetti in SQLite
« Risposta #5 il: 13 Maggio 2011, 10:45:32 CEST »
0
per la data usa il simpledateformatter.
ti crei un tuo format, come quello che hai scritto:
"YYYY/MM/dd" e poi lo usi per scrivere e parsare la stringa

scusa, Nicola, ma sqlite non supporta i tipi date?
il mio discorso era generico per gli oggetti, ma se il dbms lo supporta, allora credo sia meglio lasciarlo com'è....
7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3489
  • Respect: +506
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:oggetti in SQLite
« Risposta #6 il: 13 Maggio 2011, 10:49:30 CEST »
0
scusa, Nicola, ma sqlite non supporta i tipi date?

Sembrerebbe di no:
Datatypes In SQLite Version 3
Io comunque di solito mi memorizzo da data come intero... più semplice da maneggiare ed eventualmente formattare nei vari tipi di locale...

Offline 7h38ugg3r

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1200
  • Respect: +133
    • riccardofischetti
    • th38ugg3r
    • @7h38ugg3r
    • Mostra profilo
  • Dispositivo Android:
    Galaxy-S GT I-9000/ ASUS Eee Pad Transformer
  • Play Store ID:
    Riccardo Fischetti
  • Sistema operativo:
    OS X Lion / Linux Mint 11 (Katya)
Re:oggetti in SQLite
« Risposta #7 il: 13 Maggio 2011, 11:14:24 CEST »
0
 o_O

io me lo tengo sempre come Date, quando posso...tanto da manipolare è comunque semplice.

7h38ugg3r<=>thebugger
Non conosci Java? Allora sei nel posto sbagliato!

http://www.androidpatterns.com/

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 4043
  • keep it simple
  • Respect: +567
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:oggetti in SQLite
« Risposta #8 il: 13 Maggio 2011, 11:41:13 CEST »
0
io me lo tengo sempre come Date, quando posso...tanto da manipolare è comunque semplice.

Ultimamente mi sono imbattuto in un problematica particolare, dove dovevo gestire date appartenenti a TimeZone diverse eventualmente anche con Daylight Save Time. Forse per mia ignoranza con Date facevo molta confusione, al che ho deciso di passare al timestamp.
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline Nicola_D

  • Moderatore
  • Utente storico
  • *****
  • Post: 2479
  • SBAGLIATO!
  • Respect: +323
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Nexus 6p, Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:oggetti in SQLite
« Risposta #9 il: 13 Maggio 2011, 12:49:03 CEST »
0
Sembrerebbe di no:
Datatypes In SQLite Version 3
Io comunque di solito mi memorizzo da data come intero... più semplice da maneggiare ed eventualmente formattare nei vari tipi di locale...
si, vero, mi dimentico sempre che basta salvarsi il long (millisecondi) dell'oggetto Date,cosi non hai parsing da fare, e quando crei il Date gli passi il timestamp nel costruttore
IMPORTANTE:NON RISPONDO A PROBLEMI VIA MESSAGGIO PRIVATO
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline cadupper

  • Utente junior
  • **
  • Post: 81
  • Respect: 0
    • cadupper
    • Mostra profilo
  • Dispositivo Android:
    HTC Magic Tim (32A)
  • Play Store ID:
    cadupper
  • Sistema operativo:
    Ubuntu 10.04
Re:oggetti in SQLite
« Risposta #10 il: 25 Maggio 2011, 18:38:47 CEST »
0
si, vero, mi dimentico sempre che basta salvarsi il long (millisecondi) dell'oggetto Date,cosi non hai parsing da fare, e quando crei il Date gli passi il timestamp nel costruttore

Quindi alla fine mi consigliate di Creare un Date con dentro giorno,mese e anno e poi recupero il timestamp e salvo quest'ultimo nel database?