Mi sono imbattuto nella necessità di memorizzare i valori determinati dal runtime in un database SQL.
Ad esempio, c'è una GUI in cui un utente può aggiungere nuovi campi modificabili. Quindi l'utente aggiunge un campo Name
, sceglie il tipo di valore String
e inserisce il valore Arthur
.
Quindi l'utente aggiunge un nuovo campo Money
, sceglie il tipo di valore Decimal
e inserisce il valore 10.05
.
Come visto sopra, l'utente può aggiungere qualsiasi campo con qualsiasi tipo di valore.
La mia idea è di avere uno schema di tabella SQL come segue:
- FieldName (varchar) - es.
'Money'
o'IsAlive'
- FieldType (varchar) - ad esempio
'Decimal'
o'Boolean'
- FieldValue (varchar) - es.
'10.5'
o'1'
Significa che posso memorizzare qualsiasi tipo di dati predefinito nella tabella, sia che si tratti di string
, boolean
o long
.
Il problema è che non sono sicuro che sia l'approccio migliore per trasmettere tali valori a string
e quindi eseguire nuovamente il cast durante la lettura dalla tabella.
Un'altra opzione sarebbe quella di avere una colonna di ogni tipo, ma suona anche peggio.
Il mio approccio per trasmettere tutto a suoni di stringa è sensato o dovrei provare qualcos'altro?