Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> czy to prawda ze nalezy unikac przechowywania pol NULL?
michat34
post
Post #1





Grupa: Zarejestrowani
Postów: 200
Pomógł: 1
Dołączył: 4.08.2012

Ostrzeżenie: (10%)
X----


gdzies kiedys wpadlem na taki artykul gdzie pisalo by unikac przechowywania null, gdyz zmniejszaja wydajnosc,powoduja nieczytelnosc i cos tam jeszcze. czy to prawda?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
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%)
-----


1. Przede wszystkim nie dyskutujcie w oparciu o przykłady bazujące na złej strukturze bazy danych (przykład pojazdów i wspólnej tabeli do przechowywania cech samochodów i śmigłowców).
2. Takie potworki, jak AVG(col_name), gdzie do funkcji może trafić NULL również są przykładem błędnej struktury. Tym razem jest to przykład złego zapytania, które nie odrzuca rekordów z NULLem. Baza danych powinna w takim przypadku wywalić błąd (najlepiej jakby robiła to na poziomie interpretacji zapytania SQL) albo przynajmniej zwrócić NULL. Bo liczenie średniej z NULL-a przypomina liczenie sumy z puszki coli - nie ma najmniejszego sensu.
3. Jak już powiedziano, NULL powinien być zawsze traktowany jako brak informacji, czyli nie można go użyć jako wartości reprezentującej zero komentarzy danego artykułu.
4. Tak jak przypuszczałem, i tak jak widzę po przykładach w powyższej dyskusji, rady by unikać NULL-a powinny być zastąpione radami by poprawnie tworzyć strukturę bazy danych i zapytania do niej (np. skorzystanie z modelu EAV w przykładzie z cechami pojazdów).

Ten post edytował Crozin 12.11.2012, 17:49:17
Go to the top of the page
+Quote Post

Posty w temacie
- michat34   czy to prawda ze nalezy unikac przechowywania pol NULL?   10.11.2012, 17:06:19
- - Crozin   Nie, to nie prawda.   10.11.2012, 18:00:50
- - irmidjusz   A w podręcznikach od MySQLa tak piszą, że lepiej n...   11.11.2012, 00:46:24
- - starko   Martwicie się o wydajność jakbyście pisali potężne...   11.11.2012, 09:47:19
- - nospor   Na pole z NULLem baza mysql potrzebuje dodatkowego...   11.11.2012, 12:13:32
- - Crozin   Jeżeli jakieś pole może przyjąć "logiczne nic...   11.11.2012, 15:30:20
- - nospor   Też kiedyś wychodziłem z założenia, że jak coś ma ...   11.11.2012, 19:37:13
- - Damonsson   To jest trochę bez sensu, bo jak się jednak patrzy...   11.11.2012, 20:33:00
- - irmidjusz   Ale przecież to zależy od konkretnej sytuacji, od ...   11.11.2012, 21:04:28
|- - markonix   Cytat(irmidjusz @ 11.11.2012, 21:04:2...   12.11.2012, 12:56:20
- - Damonsson   No przecież właśnie to samo napisałem wyżej ^^ Ni...   11.11.2012, 21:42:03
- - Szymciosek   Wg. mnie jeśli potrzebujesz, to korzystasz, po coś...   11.11.2012, 22:29:06
- - alegorn   korzystanie z wartości null powoduje wymuszone kor...   12.11.2012, 10:38:20
- - Damonsson   Tu akurat podałeś przykład w którym należy uniknąć...   12.11.2012, 11:53:40
- - Zielonkawy18   "Tu akurat podałeś przykład w którym należy u...   12.11.2012, 13:13:02
- - alegorn   Cytat(Damonsson @ 12.11.2012, 11:53:4...   12.11.2012, 15:44:39
|- - markonix   Cytat(alegorn @ 12.11.2012, 15:44:39 ...   12.11.2012, 17:07:31
|- - sazian   Cytat(alegorn @ 12.11.2012, 15:44:39 ...   12.11.2012, 20:31:50
|- - irmidjusz   Cytat(sazian @ 12.11.2012, 20:31:50 )...   13.11.2012, 00:06:28
|- - markonix   Cytat(irmidjusz @ 13.11.2012, 00:06:2...   13.11.2012, 23:26:00
- - everth   Bo problem NULLa to w ogóle problem z teorią relac...   12.11.2012, 16:40:13
- - d3ut3r   W sumie to nigdy się nad tym nie zastanawiałem, z ...   12.11.2012, 17:02:07
- - nospor   CytatNie można narzucać haseł "Nie stosuj NUL...   12.11.2012, 17:45:54
- - Crozin   1. Przede wszystkim nie dyskutujcie w oparciu o pr...   12.11.2012, 17:48:09
- - Crozin   CytatBill Karwin w http://helion.pl/ksiazki/antywz...   13.11.2012, 00:17:09
- - everth   @d3ut3r Trochę spoźnione: CytatTylko wówczas co za...   13.11.2012, 09:16:49
- - d3ut3r   Z ciekawości jakie jeszcze informacje można odczyt...   13.11.2012, 09:24:28
- - alegorn   to ze przykład z pojazdami jest kiepski - to fakt,...   13.11.2012, 09:59:53
- - everth   @d3ut3r Hm, np. że wartość to NULL Brak danych ...   13.11.2012, 12:38:16
- - Noidea   @everth Zawsze można też zaprojektować bazę w pier...   14.11.2012, 22:46:42
- - everth   Ok, ale czy to nie sprowadzi się właściwie do tego...   17.11.2012, 20:01:29
- - Crozin   @everth: Chodziło raczej o to, że podany przez C...   17.11.2012, 20:58:31
- - Pilsener   Powinno się zawsze używać NULL (ale nie string nul...   17.11.2012, 21:54:33
- - everth   @Crozin Masz rację. Tylko nie wiem jak ta osobna t...   18.11.2012, 18:45:16


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: 25.09.2025 - 18:41