Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> kilka pól primary key
Tartut
post
Post #1





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 29.03.2011

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


Mam tabelę users i 4 klucze podstawowe. Czy to jest wydajne? Czy może lepiej klucz podstawowy ustawić tylko dla pola user_id?
  1. CREATE TABLE users
  2. (
  3. user_id int UNSIGNED AUTO_INCREMENT NOT NULL,
  4. login varchar(30) NOT NULL,
  5. pass char(32) NOT NULL,
  6. user_ip int(11) UNSIGNED NOT NULL,
  7. email varchar(255) NOT NULL,
  8. nick varchar(20) NOT NULL,
  9. avatar varchar(255) NOT NULL,
  10. points int NOT NULL DEFAULT 0,
  11. group_id int(2) NOT NULL,
  12. ses_start int(12) NOT NULL,
  13. ses_id char(32) NOT NULL,
  14. state enum('1', '0'),
  15. PRIMARY KEY(user_id, login, email, nick)
  16. );
Go to the top of the page
+Quote Post
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Masz jeden klucz podstawowy, złożony z czterech kolumn. I o ile w zapytaniach nie używasz tych czterech kolumn do identyfikacji rekordu (czego na 99,9% nie robisz) jest to złe rozwiązanie.
Go to the top of the page
+Quote Post
Tartut
post
Post #3





Grupa: Zarejestrowani
Postów: 21
Pomógł: 1
Dołączył: 29.03.2011

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


Dzięki za odpowiedź. (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 23:48