Hello, I'm new to SQL and MySQL, I'm developing a web application (php) and I need 
some tables relationed between them with a foreing key. The idea is the following

create table persons (
    cid smallint auto_increment not null unique,
    name varchar(30), 
    alias varchar(10), 
    primary key (cid));

create table phones(
    pid smallint auto_increment not null unique, 
    cid smallint not null, 
    phone varchar(10), 
    obs varchar(40), 
    primary key (pid));

There are many other tables like phones and I will need to do with them the same 
thinks. 

The questions are the followings:

- How do I preserve integrity? I mean, I don't want to have phones without persons, so 
when I delete a person I want to make a cascade erase. 
- When I do a:
    select * from persons left join phones using (cid);
I get as many rows as phones have this person, is there any way to make a query that 
returns a single row with all the information. 

Those are the first, hope can you help me. 

Greeting, 

Jorge Calas
Havana University. 

Reply via email to