[Mysql] Confronto tra tabelle ed inserimento dati- Comando JOIN (Credo)
Salve a tutti, provo anche qui a spiegare un bel problemino che ho, sperando che questa comunità possa essermi d'aiuto, come sempre d'altra parte,
cerco di spiegarmi
ho diverse tabelle ma in questo caso poniamo il caso trattasi di 2
TABELLA 1
ID Nome Cognome CATEGORIA
1 Pppo Pluto SUPER
2 Topolino Minni TOP
la tabella 2 e 3 invece hanno altri attriubti
ma hanno in comune il campo categoria
esempio
TABELLA 2
ID Nome Nazione Residenza ATTRIBUTI
1___PIppo___America___Topolinia ____SUPER
in questo caso ATTRIBUTI e CAEGORIA devono coincidere
Considerando che il campo che cambia è CATEGORIA nella tabella 1 vorrei che lo script che farò in php confronta il nome in tabella 2 lo cerchi in tabella 1 e gli attricuisca in ATTRIBUTI la CATEGORIA
spero di essemri spiegato
ho capito che ci buole il join per il raffronto delle tabelle ma non riesco a far modificare ATTRIBUTI in basea CATEGORIA
Resto in attesa di un vostro aiuto
GRAZIE
confronto tra tabelle e inserimento
ciao.. se ho capito bene tu hai 3 tabelle, ciascuna di esse ha un campo categoria..
quello che ti consiglio di fare è creare una tabella CATEGORIA in cui inserirai tutte le categorie che hai previsto..dopo di che, l'attributo CATEGORIA delle tabelle 1, 2 e 3 dovrà riferire ad una tupla esistente della tabella CATEGORIA...questo lo fai nel seguente modo
Codice:
create table if not exists Categoria(
Id int auto_increment,
Nome char(14),
primary key (Id)
) ENGINE=INNODB;
create table if not exists Tabella1(
Id int autoincrement,
Nome char(14),
Cognome char(14),
Categoria int,
primary key (Id),
index categoria_ind_FK(Categoria),
foreign key (Categoria) references Categoria(Id)
on update cascade
on delete cascade
) ENGINE=INNODB;
Quindi quando poi farai un inserimento nella tabella 1 dovrai assicurarti che il valore che inserisci nel campo Categoria, sia un Id valido per la tabella Categoria...
..spero di esserti stato di aiuto