Pary_anime
Kodowanie baz danych
- * U¿ywaæ nale¿y pól text dla pól, które maj± charakter znakowy, a nie s± bezpo¶rednio powi±zane z innymi typami danych, chyba ¿e zawsze ich d³ugo¶æ jest ograniczona (wtedy lepiej u¿yæ varchar lub char.
- * W przypadku pól s³u¿±cych do wpisywania daty lub czasu nale¿y zawsze stosowaæ datatime nawet je¶li zale¿y nam na czê¶ci data lub time.
- * Dla pól maj±cych na celu podanie warto¶ci logicznych co prawdy i fa³szu bêd± zawsze u¿ywane pola o charakterze logicznym, bool i boolen s± tego dobrym przyk³adem.
- * Poza wyj±tkowymi sytuacjami, pola powinny mieæ ustalon± warto¶æ not null. Takie pola powinny mieæ okre¶lon± warto¶æ domy¶ln± (default)
!" border="0" /> G³osowanie rozpoczête !
Po d³ugotrwa³ych dyskusjach, przekonywaniu sie (co tu ukrywac) za¿artych k³ótniach postanowili¶my poddaæ projekt standardu pod g³osowanie. Uznali¶my, ¿e lepsze jest wrogiem dobrego, a nasze akademickie dyskusje mog± siê ci±gn±æ w nieskoñczono¶æ. Zawsze mo¿na niedoci±gniêcia poprawiæ pó¼niej.
Bardzo proszê zwolenników PHP i Open Source do wziêcia udzia³u w niniejszym g³osowaniu. Koniec g³osowania planowany na 20 grudnia 2002, a wiêc jeszcze przed
Bo¿ym Narodzeniem.
Myslê, ¿e to przyczyni siê do ruszenia dalszych projektów.
Zg³oszone od dzi¶ propozycje zmian bêd± mog³y byæ g³osowane w po¼niejszym czasie.
Ten bool i boolen to chyba skads bez mysli zerzniete, ale co mnie tam. I tak wiem o co chodzi.
Sl@o napisa³(a):Kodowanie baz danych
- * Poza wyj±tkowymi sytuacjami, pola powinny mieæ ustalon± warto¶æ not null. Takie pola powinny mieæ okre¶lon± warto¶æ domy¶ln± (default)
i to wedlug mnie blad.
bo jesli ustalasz NOT NULL i default to jedno gryzie sie z drugim
NOT NULL ma wymusic podanie wartosci i zwrocic blad gdy wartosci brak. a w przypadku podania default, argument NOT NULL praktycznie jest olewany przez DBMS...
roodee napisa³(a):Sl@o napisa³(a):Kodowanie baz danych
- * Poza wyj±tkowymi sytuacjami, pola powinny mieæ ustalon± warto¶æ not null. Takie pola powinny mieæ okre¶lon± warto¶æ domy¶ln± (default)
i to wedlug mnie blad.
bo jesli ustalasz NOT NULL i default to jedno gryzie sie z drugim
NOT NULL ma wymusic podanie wartosci i zwrocic blad gdy wartosci brak. a w przypadku podania default, argument NOT NULL praktycznie jest olewany przez DBMS...
No i wlasnie to sa te wyjatkowe sytuacje. Zastanawiam sie nad sytuacja, gdy nie bedzie defoltowanej danej. Wtedy skrypt moze zwrocic blad, a tego bym nie chcial. Lepiej, zeby o tym decydowal skrypt i weryfikowal dane... No wlasnie tylko po co w takim razie NOT NULL?
Pzdr
Sl@o
Sl@o napisa³(a):No i wlasnie to sa te wyjatkowe sytuacje. Zastanawiam sie nad sytuacja, gdy nie bedzie defoltowanej danej. Wtedy skrypt moze zwrocic blad, a tego bym nie chcial. Lepiej, zeby o tym decydowal skrypt i weryfikowal dane... No wlasnie tylko po co w takim razie NOT NULL?
Pzdr
Sl@o
NOT NULL w polu sprawia, ze jesli nie podasz tej wartosci w INSERT to baza nie przyjmie wpisu... i o to chodzi
czyli albo DEFAULT albo NULL, NOT NULL
pozdr.
roodee napisa³(a):Sl@o napisa³(a):No i wlasnie to sa te wyjatkowe sytuacje. Zastanawiam sie nad sytuacja, gdy nie bedzie defoltowanej danej. Wtedy skrypt moze zwrocic blad, a tego bym nie chcial. Lepiej, zeby o tym decydowal skrypt i weryfikowal dane... No wlasnie tylko po co w takim razie NOT NULL?
Pzdr
Sl@o
NOT NULL w polu sprawia, ze jesli nie podasz tej wartosci w INSERT to baza nie przyjmie wpisu... i o to chodzi
czyli albo DEFAULT albo NULL, NOT NULL
pozdr.
Wiem po co jest NOT NULL, ale wiem co PHP lubi zwrocic jak nie uda mu sie wykonac zapytania SQL. W zalozeniu powyzszym chodzi raczej o to by pole bylo jednak wypelnione, albo nic nie zostalo wpisane. Wazne to w przypadku, gdy system pada w trakcie dodawania rekordu.
Zeszta to nie moj wymysl, ale kogos madrzejszego ode mnie. Zrodla musze poszukac, ale to za ktoryms z linkow.
Sl@o napisa³(a):
Wiem po co jest NOT NULL, ale wiem co PHP lubi zwrocic jak nie uda mu sie wykonac zapytania SQL. W zalozeniu powyzszym chodzi raczej o to by pole bylo jednak wypelnione, albo nic nie zostalo wpisane. Wazne to w przypadku, gdy system pada w trakcie dodawania rekordu.
Zeszta to nie moj wymysl, ale kogos madrzejszego ode mnie. Zrodla musze poszukac, ale to za ktoryms z linkow.
nie neguje tego calkowicie, bo taki zapis czasem sie przydaje (sam NOT NULL DEFAULT 0 uzylem w bazie projektu) jednak my tutaj rozmawiamy o standardach
ja zarowno NULL jak i default uzywalem w konstrukcji bazy (o tym dokladnie potem)
artykuly w polu szablon mialy NULL, ale juz kategorie mialy wpis NOT NULL DEFAULT 0 (kategoria nadrzedna). ale NOT NULL wpisalem nie przez to ze jest default ani standard, tylko po to ze cos tam musi byc ))
generalnie to ciezko jest zrobic standard jesli idzie o sql bo sa rozne szkoly baz danych, rozne ludzie maja przyzwyczajenia i nei jest powiedziane ze jedno lepsze od drugiego. po prostu na wiele sposobow mozna integralnosc danych zapewnic. i na pewno nie mozna dodawac do bazy defaultow tylko po to by uniknac bledow, bo to moze troche namieszac. a dobra obsluga bledow sobie z tym poradzi.