Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    9

    relazione tra 2 tabelle NON PRIMARY KEY

    buongiorno a tutti,
    Sto costruendo un database in cui ho 2 tabelle: Utenti e Interessi.

    Utenti ha come campi: ID (primary key), Nome, Nickname.
    Interessi ha come campi: ID(primary key), UtenteNickname, Interesse.

    Ogni utente può avere più interessi (quindi relazione uno a molti).

    E' corretto creare la relazione tra Utenti e Interessi sulla base di Nickname?
    Cioè che Interessi.UtenteNickname si riferisce a Utenti.Nickname?
    Il dubbio mi viene in quanto nella tabella Utenti il campo Nickname non è
    primary key, ma è comunque un valore unico, nessun utente può registrarsi con
    un nickname che già esiste nel db.

    Io uso XAMPP e ho provato con phpmyadmin a creare una cosa del genere, e me l'ha fatto fare tranquillamente senza errori (se fosse stato impossibile non me l'avrebbe fatto fare, credo).

    Altrimenti dovrei collegare le due tabelle sulla base dell'ID Utente, che è un
    auto_increment. Ma a quel punto non saprei come inserire questo id nella
    tabella interessi, visto che questi dati provengono dalla form di
    registrazione.

    Mi spiego meglio: io faccio registrare gli utenti attraverso una form, in cui indicano tutti i loro dati e spuntano delle checkbox con i loro interessi.
    io devo inserire questi interessi nella tabella Interessi: mi viene più facile inserirli sfruttando il nickname, anzichè un ID auto_increment che si crea automaticamente nel db.

    Spero qualcuno possa aiutarmi.

  2. #2
    non sarà performante, ma se po' fa'

  3. #3
    Utente di HTML.it
    Registrato dal
    Jun 2010
    Messaggi
    9

    meglio di no?

    cioè....sarebbe meglio di no? trovare un'alternativa più elegante?
    devo consegnare il progetto per un esame quindi devo fare tutto al meglio possibile.

  4. #4
    si parla di performance o di eleganza?

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922

    Re: relazione tra 2 tabelle NON PRIMARY KEY

    Originariamente inviato da be88
    Altrimenti dovrei collegare le due tabelle sulla base dell'ID Utente, che è un
    auto_increment. Ma a quel punto non saprei come inserire questo id nella
    tabella interessi, visto che questi dati provengono dalla form di
    registrazione.
    Una volta inserito l'utente recuperi l'id e lo usi come chiave esterna.
    In php c'è la funzione mysql_insert_id() mentre mysql mette a disposizione

    select last_insert_id()

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.