Visualizzazione risultati 1 fino 15 di 15

Discussione: Creazione tabella SQL

  1. #1
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito Creazione tabella SQL

    Vorrei creare una tabella composta in questo modo:
    nome (stringa di 10 caratteri)
    cognome (stringa di 10 caratteri)
    sesso (enumerativo: m o f)
    dove nome e cognome costituiscono la chiave primaria della tabella.
    qual'è il codice sql necessario a crearla?

  2. #2
    Guest

    Predefinito

    basta che vai su phpmyadmin dal pannello di controllo e fai crea tabella

  3. #3
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito

    preferirei il codice sql...in modo da capire come si fa anche a riga di comando

  4. #4
    L'avatar di foreach
    foreach non è connesso Altervistiano Junior
    Data registrazione
    11-06-2008
    Residenza
    3 metri sotto terra
    Messaggi
    501

    Predefinito

    Dicci almeno come vuoi chiamare la tabella, no?





    foreach
    Ultima modifica di foreach : 20-10-2009 alle ore 19.21.25 Motivo: Ho sbagliato
    Codice PHP:
    foreach($vettore as $chiave => $valore) {
    echo 
    "Ciao";


  5. #5
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito

    la tabella chiamiamola "tabella" e come chiave primaria scelgo l'unione dei campi nome e cognome

  6. #6
    Guest

    Predefinito

    Ciao tryhere...
    Per chiave primaria si intende uno o più attributi che permettono di individuare in modo univoco una tupla (che nei DB, come saprai, è una riga di valori nella tua tabella). Usare come chiave primaria i valori "nome" e "cognome" può generare parecchi problemi, se consideriamo i casi di omonimia. La cosa che ti consiglio di fare è di associare ad ogni utente un ID, un valore numerico che si utilizza molto di frequente per dare un identificatore univoco a ciascuna singola tupla: puoi anche scegliere di autoincrementare il valore al verificarsi di una nuova registrazione, cosa molto comoda.

    Per creare una tabella devi usare il costrutto SQL che segue:
    Codice PHP:
    CREATE TABLE tabella (
    id int NOT NULL AUTO_INCREMENT;
    nome char[N],
    cognome char[N],
    ...
    altri dati...

    PRIMARY KEY(id),
    );
    Ad N metti la lunghezza massima del campo.
    Citazione Originalmente inviato da foreach Visualizza messaggio
    Poi, un'altra cosa, la chiave primaria può essere solo una... scegli tu quale.
    Mi spiace ma è sbagliato. Leggi poche righe sopra ;)
    Ultima modifica di mksoftware : 20-10-2009 alle ore 12.00.34

  7. #7
    L'avatar di seneca
    seneca non è connesso Super Moderatore
    Data registrazione
    18-12-2004
    Residenza
    la Città Eterna
    Messaggi
    8,376

    Predefinito

    Comunque phpmyadmin ti fa vedere il codice SQL per la creazione della tabella.
    Giocarci può essere un modo per imparare più in fretta


    -- Aut Roma Aut Nihil!

  8. #8
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito

    Grazie.
    Un dettaglio, al di la' del fatto di usare nome e cognome come chiave primaria (che era solo un esempio) come faccio a definire come chiave primaria l'unione di piu' campi?
    Altra cosa: se tutti i miei nomi e cognomi fossero lunghi esattamente 10 caratteri (e non al massimo 10) potrei sfruttare questo fatto per impostare che tutti i valori di nome e cognome devono contenere esattamente 10 caratteri?

  9. #9
    Guest

    Predefinito

    Non credo sia possibile, però puoi definire più indici.
    Per il secondo problema devi fare un controllo nel form da dove inserisci i dati, SQL controlla solo la lunghezza massima.

  10. #10
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito

    Come non e' possibile? Certo che e' possibile...quello che vorrei sapere e' qual'e' la sintassi corretta per realizzarlo...

  11. #11
    L'avatar di seneca
    seneca non è connesso Super Moderatore
    Data registrazione
    18-12-2004
    Residenza
    la Città Eterna
    Messaggi
    8,376

    Predefinito

    Devi utilizzare la sintassi
    Codice:
    PRIMARY KEY(index_col_name, ...)
    Qui trovi la documentazione ufficiale.


    -- Aut Roma Aut Nihil!

  12. #12
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito

    perfetto, grazie. come definisco un campo di tipo enumerativo?

  13. #13
    L'avatar di seneca
    seneca non è connesso Super Moderatore
    Data registrazione
    18-12-2004
    Residenza
    la Città Eterna
    Messaggi
    8,376

    Predefinito

    Scusa, non voglio fare il cattivo della situazione, ma ti ho dato il link della documentazione ufficiale. Perchè devo cercarti io anche questa informazione? Almeno provaci da solo!

    >> http://dev.mysql.com/doc/refman/5.4/en/enum.html


    -- Aut Roma Aut Nihil!

  14. #14
    tryhere non è connesso AlterVistiano
    Data registrazione
    19-09-2007
    Messaggi
    757

    Predefinito

    Ultima cosa (ho cercato ma non l'ho trovata).
    Il tipo booleano esiste o non esiste?

  15. #15
    L'avatar di seneca
    seneca non è connesso Super Moderatore
    Data registrazione
    18-12-2004
    Residenza
    la Città Eterna
    Messaggi
    8,376

    Predefinito



    -- Aut Roma Aut Nihil!

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •