Avendo una tabella formata da soli 3 campi di tipo int e sapendo in anticipo che l'unico campo sempre valorizzato sarà solo il primo, qual'è il modo migliore per gestire la valorizzazione, a seconda dei cai, di uno soltanto degli altri 2 campi restanti?
Ad esempio, diaciamo che la struttura della tabella potrebbe essere simile a questa
non riesco ad ottenere un risultato come questocodice:id_campo1 smallint(5) NOT NULL id_campo2 smallint(5) NOT NULL id_campo3 tinyint(3) NOT NULL
in quanto nel campo id_campo3 non è possibile memorizzare un valore diverso da un'intero. Solo valorizzando il campo vuoto, che potrebbe essere una volta il campo2 e l'altra il campo3, con "0" non ho problemi.codice:+-----------+-----------+-----------+ | id_campo1 | id_campo2 | id_campo3 | +-----------+-----------+-----------+ | 1 | 1 | | +-----------+-----------+-----------+
Certamente questo comportamento è più che giusto seguendo la logica delle proprietà dei tipi di campi e dei valori che questi possono accettare o meno. Mi chiedevo se si potesse fare diversamente ottenendo un risultato simile all'esempio fatto prima, quindi senza dover settare a zero "0" il campo che dovrà restare vuoto. E' possibile?

Rispondi quotando