Ciao,
ho due tabelle fatte nel seguente modo:
Praticamente devo fare in modo che il campo Cap dela tabella utente prenda il campo Cap della tabella citta come foreign key....devo modificare tale tabella con alter table, ho provato a fare così ma non mi funziona:codice:mysql> describe citta; +-------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------+-------------+------+-----+---------+----------------+ | ID | int(11) | NO | PRI | NULL | auto_increment | | Citta | varchar(35) | YES | | NULL | | | Cap | int(11) | YES | | NULL | | +-------+-------------+------+-----+---------+----------------+ 3 rows in set (0.02 sec) mysql> describe utente; +--------------+-------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+-------------+------+-----+---------+-------+ | User_Id | varchar(20) | NO | PRI | NULL | | | Nome | varchar(20) | NO | | NULL | | | Cognome | varchar(20) | NO | | NULL | | | Data_Nascita | date | NO | | NULL | | | Indirizzo | varchar(50) | NO | | NULL | | | Cap | int(11) | NO | | NULL | | +--------------+-------------+------+-----+---------+-------+ 6 rows in set (0.01 sec)
ALTER TABLE utente ADD CONSTRAINT CapDeveEsistere FOREIGN KEY (Cap) REFERENCES citta (Cap);
come mai? Cosa sbaglio?
Domanda 2, se ho una tabella come questa:
e la tabella è gia popolata di dati c'è modo di cambiargli il tipo del campo cap da varchar ad int e convertire tutti i dati contenuti nella colonna cap da varchar ad int?codice:mysql> describe comuni; +------------------+--------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------------+--------------+------+-----+---------+-------+ | comune | varchar(255) | YES | | NULL | | | provincia | varchar(255) | YES | | NULL | | | cap | varchar(255) | YES | | NULL | | | prefisso_tel | varchar(255) | YES | | NULL | | | codice_istat | varchar(255) | YES | | NULL | | | codice_catastale | varchar(255) | YES | | NULL | | | sito_comune | varchar(255) | YES | | NULL | | +------------------+--------------+------+-----+---------+-------+ 7 rows in set (0.00 sec)
Tnx
Andrea

Rispondi quotando
