La relazione 1-1 era tra la parte di record "standard" e quella "variabile".
In pratica, nella parte standard gestisco campi come ID, data, etc, mentre in quella variabile, grazie ad un codice che identifica il tipo di dato variabile, inserisco informazioni che sono specifiche per quel tipo dati.
In questo modo avrò che il record con ID = 56 potrà avere nella parte variabile tipo=1 e poi dati che si riferiscono ad una persona (es. nome, cognome, telefono) mentre il record con ID=57 potrà avere nella sua parte variabile tipo=2 e riferirsi a dati tipici di una stanza (piano, numero, esposizione..).
La mia idea sarebbe quella di avere nell'app una Map costruita sui valori dei vari editbox e controlli della UI, usare il B4XSerializator per convertire la Map in una sequenza di byte e memorizzare tale array di byte nel BLOB. Processo inverso per la lettura.
L'alternativa è memorizzare il contenuto dei vari campi raccolti nella Map in corrispondenti campi di una tabella dedicata a quel tipo (DatiPersona, DatiStanza..) e poi andare di JOIN tra la tabella principale (quella dei dati "standard") e quella ricavata dal tipo che specifica appunto il tipo di dati variabili.
Nell'esempio di prima, per il record 56 farei la JOIN con la tabella DatiPersona mentre per il record 57 dovrei farlo con DatiStanza.
In un caso e nell'altro, la risposta sarà sempre un record solo, a causa della relazione 1-1 di cui dicevo all'inizio.
In pratica, nella parte standard gestisco campi come ID, data, etc, mentre in quella variabile, grazie ad un codice che identifica il tipo di dato variabile, inserisco informazioni che sono specifiche per quel tipo dati.
In questo modo avrò che il record con ID = 56 potrà avere nella parte variabile tipo=1 e poi dati che si riferiscono ad una persona (es. nome, cognome, telefono) mentre il record con ID=57 potrà avere nella sua parte variabile tipo=2 e riferirsi a dati tipici di una stanza (piano, numero, esposizione..).
La mia idea sarebbe quella di avere nell'app una Map costruita sui valori dei vari editbox e controlli della UI, usare il B4XSerializator per convertire la Map in una sequenza di byte e memorizzare tale array di byte nel BLOB. Processo inverso per la lettura.
L'alternativa è memorizzare il contenuto dei vari campi raccolti nella Map in corrispondenti campi di una tabella dedicata a quel tipo (DatiPersona, DatiStanza..) e poi andare di JOIN tra la tabella principale (quella dei dati "standard") e quella ricavata dal tipo che specifica appunto il tipo di dati variabili.
Nell'esempio di prima, per il record 56 farei la JOIN con la tabella DatiPersona mentre per il record 57 dovrei farlo con DatiStanza.
In un caso e nell'altro, la risposta sarà sempre un record solo, a causa della relazione 1-1 di cui dicevo all'inizio.