code_junkie

Inserting rows in table that has a relationship with another table

Nov 12th, 2011
66
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.39 KB | None | 0 0
  1. PERSON
  2. id
  3. name
  4. nickname_id
  5.  
  6. NICKNAME
  7. id
  8. name
  9.  
  10. SELECT n FROM NICKNAME n WHERE name in ('Krusty', 'Doppy', 'Flash', etc)
  11.  
  12. CREATE TABLE Nickname (
  13. id SERIAL PRIMARY KEY,
  14. name VARCHAR(20) UNIQUE
  15. );
  16.  
  17. INSERT INTO Nickname (name) VALUES ("Bill")
  18. ON DUPLICATE KEY UPDATE name = name;
  19.  
  20. INSERT INTO Person(Name, NicknameID)
  21. VALUES(:name, (SELECT id FROM Nickname WHERE Name = :nickname))
Add Comment
Please, Sign In to add comment