Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Integralność kluczy, czy jak to sie tam nazywa ;)
Fallout
post
Post #1





Grupa: Zarejestrowani
Postów: 154
Pomógł: 0
Dołączył: 17.12.2003
Skąd: Olsztyn

Ostrzeżenie: (0%)
-----


Witam,

posiadam 2 tabele o takej strukturze:

  1. CREATE TABLE blogs (
  2. b_id Int NOT NULL AUTO_INCREMENT,
  3. u_id Int NOT NULL,
  4. b_name Char(18) NOT NULL,
  5. b_title Char(60),
  6. b_reg_date Timestamp NULL,
  7. b_counter Int,
  8. UNIQUE (b_id),
  9. UNIQUE (b_name),
  10. PRIMARY KEY (b_id)) ENGINE = InnoDB;
  11.  
  12. CREATE TABLE users (
  13. u_id Int NOT NULL AUTO_INCREMENT,
  14. u_login Char(32) NOT NULL,
  15. u_pass Char(32) NOT NULL,
  16. u_email Char(20) NOT NULL,
  17. PRIMARY KEY (u_id)) ENGINE = InnoDB;


i takich powiązaniach:

  1. ALTER TABLE blogs ADD FOREIGN KEY (u_id) REFERENCES users (u_id) ON DELETE cascade ON UPDATE cascade;
  2. ALTER TABLE friends ADD FOREIGN KEY (u_id) REFERENCES users (u_id) ON DELETE cascade ON UPDATE cascade;


i teraz zamiana/usunięcie danego id w tabeli 'users' powoduje usunięcie odpowiednich rekordów w tabeli 'blogs'. Czyli on delete i on update działa dla rodzica (parent). Ale jak zrobić to dla dziecka? (child)

dla child chyba jest tylko 'NONE' lub 'RESTRICT' a ja chcialbym cascade. Da się to zrobić w MySql? (4.1)

z góry dzięki za (p)odpowiedzi smile.gif


--------------------
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 11:48