Domanda

Al momento sto 'imparando' CodeIgniter, PHP e MySQL tutti in una volta, come ho cercare di creare un tipo di "lista di controllo" del sito web, dove i visitatori iscriversi, creare un progetto e si richiede un elenco di domande, dove devono alcuni campi di input

Sono un po 'bloccato sulla mia DB MySQL-design ... (completamente bloccato in realtà)

che cosa si tratta di è ...

1 progetto può avere uno di 3 tipi. "Tipo A / B / C"

Digitare un ha 20 domande

Tipo b = digitare un + 15 domande

Tipo c = tipo b + 15 domande ...

Quindi, in pratica mi piacerebbe poter dire facilmente, Domanda A è tipo A e / o Tipo B e non C .

Ora, non so se quello che sto facendo è corretto, ma sto facendo fondamentalmente due tabelle e quindi impostando una relazione tra loro "molti a molti" (credo?) n: m in mySQL Workbench

ProjectType
id
ProjectTypeName

Questions
ID
Title etc...

ProjectType_has_Questions
ProjectType_id
Questions_id

Inoltre, ogni domanda "può, non deve" avere 3 risultati (fatti attuali) e 3 correzioni (miglioramento dei risultati).

Non so se questo sta facendo alcun senso per nessuno qui, sicuro come l'inferno mi baffeling: - /

tutti i pensieri?

ps:. Ho cercato di allegare un'immagine, ma visto che questa è la mia prima volta con il sito non è stato permesso

È stato utile?

Soluzione

ti risponde a quello che ho capito qui. Avevamo qualche altra domanda che ho commentato nella sua interrogazione.

Se i tipi di progetto sarà sempre aggregati - che è, tipo C è sempre un superset di tipo B, che è sempre un superset di tipo A - poi per le domande si può solo specificare il più grande progetto che quella particolare domanda saranno inclusi in. Dire, se viene visualizzato un messaggio in tipi a e B, quindi designare la domanda di tipo B. Se apparirà in tutti e tre i tipi, designare come Tipo C.

Si sta commettendo te stesso quando si esegue questa operazione, però. Un modo più flessibile per farlo sarebbe quello di avere un tavolo di collegamento che include l'ID domanda e il tipo di progetto ID. Ogni domanda può avere una o più voci in questa tabella.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top