Visualizzazione dei risultati da 1 a 2 su 2
  1. #1
    Utente di HTML.it L'avatar di wino_7
    Registrato dal
    Dec 2006
    Messaggi
    537

    [MYSQL] Referenziare un attributo non UNIQUE

    Salve ragazzi devo referenzire un attributo di una tabella che non presenza la clausola UNIQUE che mi sembra di avere capito che è una proprietà fondamentale per far funzionare i vincoli di integrità referenziale in MYSQL.
    Come posso fare?

    Vi spiego in breve le mie tabelle
    TABELLA PRODOTTO

    Codice PHP:
    CREATE TABLE Prodotto(
    Id INT NOT NULL,
    Genere VARCHAR(30),
    Prezzo_pubblico DECIMAL(6,2NOT NULL
    ECC
    ECC
    ENGINE INNODB
    TABELLA VENDITA:

    Codice PHP:
    CREATE TABLE vendita (
    Numero_scontrino INT AUTO INCREMENT NOT NULL,
    Prodotto_venduto  VARCHAR(30NOT NULL,
    ECC ECC,
    Prezzo_prodotto DECIMAL(6,2NOT NULL
    ENGINE INNODB
    Adesso il mio problema è che l'attributo Prezzo_prodotto della tabella Vendita deve referenziare l'attributo Prezzo_pubblico della tabella Prodotto.
    Ma dato che Prezzo_pubblico non è UNIQUE come faccio a referenziarlo?
    Non può esserre UNIQUE perchè è impensabile che non possono esserci più prodotti con lo stesso prezzo.

    HELP ME !!!!!!!!!! :master: :master:

  2. #2
    Associa nella tabella "vendita" l'id del "prodotto" e non il prezzo

    Associare il prezzo non ha senso. In pratica in ogni vendita deve essere presente l'id del prodotto venduto. Il prezzo lo prelevi dalla tabella prodotto oppure lo definisci nella tabella vendita se diverso dal prezzo_pubblico presente in "prodotto".

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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 © 2025 vBulletin Solutions, Inc. All rights reserved.