Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Obciążenie serwera przy zbyt długich nazwach kolumn.
Forum PHP.pl > Forum > Bazy danych > MySQL
starach
Witam.
Jako że specjalnie nie lubię pisać wielowierszowych zapytań pomyślałem że zredukuję ich długość poprzez nadanie im unikatowych nazw. Czyli w tabeli projekty mam kolumny projek_id, projekt_nazwa i tak dalej.
Czy MySQL nie zacznie zwalniać przez to że ich nazwy się wydłużyły ? Z tego co widziałem w CMS'ach stosuję się tam nazewnictwo niezbyt skomplikowane, to znaczy bez takich przedrostków jakich ja użyłem. Za to jasność zapytań w kodzie php pozostawia wiele do życzenia. Bardzo bym prosił o odpowiedź choćby niewiele wnoszącą do tematu bo odnoszę wrażenie że mnie się lekko tutaj olewa. Jak na 18 tysięcy zarejestrowanych użytkowników to niewiele osób się wypowiada w moich tematach. Pozdrawiam.
MalCom
Zbytnio nazwa tabeli/wierszy nie wplywa na wydajnosc, aczklowiek leiej stosowac krotkie i proste nazwy.

Ale inny czynnik, o ktorym wielu zapomina, mianowicie, unikac stosowania * w select, a pobierac tylko to co jest nam potrzebne, nawet jesli wymaga to dodatkowego kodu.
W przypadku tablicy z artykulami, pobierajac cale wiersze po to zeby wyswietlic sama liste z nazwami to glupota tongue.gif
Chyba nie musze wymieniac czym to skutkuje.
starach
Dobra przekonałeś mnie wywalam przedrostki z nazw kolumn tongue.gif
Thanks for replay.
MalCom
Cytat(MalCom @ 27.01.2007, 18:21:44 ) *
Zbytnio nazwa tabeli/wierszy nie wplywa na wydajnosc, aczklowiek leiej stosowac krotkie i proste nazwy.

Mialem na mysli proste i krotkie, oczywiscie z przedrostkami, ulatwiaja one rozeznanie sie przy kreowaniu bardziej rozbudowanych zapytan. Sam stosuje je zawsze (z wyjatkami).
Krotkie i proste czyli nie dluzsze niz 255 znakow biggrin.gif Prezentujace swa nazwa to co nia ukrywaja tongue.gif
starach
No niby się mieszczą moje nazwy w przedziale który podałeś 255 chars tongue.gif
Jednak może masz pomysł jak inaczej nazwać te kolumny:
CODE
mysql> describe method;
+-------------------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------------+-------------+------+-----+---------+----------------+
| method_id | int(5) | NO | PRI | NULL | auto_increment |
| method_name | varchar(35) | YES | | NULL | |
| method_content | blob | YES | | NULL | |
| method_parameters | blob | YES | | NULL | |
| class_id | int(5) | YES | | NULL | |
+-------------------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)

mysql> describe project;
+------------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+------------------------+--------------+------+-----+---------+----------------+
| project_id | int(5) | NO | PRI | NULL | auto_increment |
| project_name | varchar(255) | YES | | NULL | |
| project_allowed_groups | varchar(255) | YES | | NULL | |
| project_last_update | varchar(15) | YES | | NULL | |
| project_visible | int(1) | YES | | NULL | |
+------------------------+--------------+------+-----+---------+----------------+
5 rows in set (0.02 sec)

mysql> describe class;
+----------------------+--------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+----------------------+--------------+------+-----+---------+----------------+
| class_id | int(5) | NO | PRI | NULL | auto_increment |
| class_name | varchar(255) | YES | | NULL | |
| class_allowed_groups | varchar(255) | YES | | NULL | |
| class_last_update | varchar(15) | YES | | NULL | |
| project_id | int(5) | YES | | NULL | |
+----------------------+--------------+------+-----+---------+----------------+
5 rows in set (0.02 sec)
MalCom
Te 255 to taka wartosc strzelana, ale raczej nikt chyba nie stosuje dluzszych niz kilkanascie znakow winksmiley.jpg
Nazwy powinny byc takie, ktore dla Ciebie sa proste i wygodne, ktore ulatwia Ci operowanie na danych i nie zmuszaja ciagle zerkac do struktury, aby przypomniec sobie jak dana kolumne nazwalem.
Nazwy ktore podales sa imho jak najbardziej odpowiednie, mi by pasowaly takie, ale nie dla kazdego "latwiej i wygodniej" znaczy to samo, jak dla mnie tongue.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.