Ho un array di 64 caratteri...i soli caratteri possibili sono A B e C.
Si può creare un campo di tipo "stringa di enum" in modo che occupi meno spazio di una stringa di 64 caratteri?
Ho un array di 64 caratteri...i soli caratteri possibili sono A B e C.
Si può creare un campo di tipo "stringa di enum" in modo che occupi meno spazio di una stringa di 64 caratteri?
Non si capisce molto che cosa tu voglia ottenere, potresti cercare di spiegarti meglio?
Che cosa rappresentano quei 64 caratteri?
Che tipo di manipolazioni devi eseguire (query, insert/update, order, etc.)?
Ho 64 semafori, ciascuno può essere verde, giallo o rosso.
Devo fare query, insert e update.
O crei una tabella con 64 campi INT, ENUM, CHAR etc. oppure crei una tabella tipo:
id
numero_semaforo (1 -> 64)
colore (ENUM rosso, giallo, verde)
la prima ipotesi non è realizzabile perchè dovrei fare 64 chiavi primarie.
per la seconda vorrebbe dire generare tutte le possibili combinazioni giusto?
E perchè mai?Originariamente inviato da starcraftworld
la prima ipotesi non è realizzabile perchè dovrei fare 64 chiavi primarie.
Dipende molto da cosa intendi per "generare tutte le possibili combinazioni".Originariamente inviato da starcraftworld
per la seconda vorrebbe dire generare tutte le possibili combinazioni giusto?
Visto che il campo di cui parlo è chiave primaria...dividendolo in 64 campi diventerebbero tutti chiavi
La domanda originale rimane: perchè ti serve una chiave primaria con così tanti campi. Utilizzare un unico campo per più valori viola le regole di normalizzazione.Originariamente inviato da starcraftworld
Visto che il campo di cui parlo è chiave primaria...dividendolo in 64 campi diventerebbero tutti chiavi
Se il problema è l'inserimento di record duplicati, ti basta usare una transazione ed una query di selezione per verificare l'unicità, oppure usare una stored procedure.
Il problema è proprio l'inserimento di record duplicati ma non ho capito che soluzione proponi