![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 289 Pomógł: 1 Dołączył: 2.11.2007 Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 36 559 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
no, i tak jak myslalem, mozna to wszystko zapisac w jednym polu stosujac operacje bitowe.
dla typu tinyint zmiescisz 8 opcji. Jak bedziesz chciał wiecej opcji, uzyj wiekszego typu. zasada dzialania: stosowac bedziemy operacje bitowe - znasz sie co nie co na bitach? 1 bajt = 8 bitow = 00000000 - kazdy bit moze byc wykorzystany do zapisu opcji liczba 1 - opcja 1 1000 liczba 2 - opcja 2 0100 liczba 4 - opcja 3 0010 liczba 8 - opcja 4 0001 .... liczba 3 - opcja 1 i 2 1100 liczba 14 - opcja 2,4,8 0111 mniej wiecej lapiesz? jak chcesz zapisac do pola opcje 1,2,3 to robisz w php
i tą wartosc wkladasz do pola A jak w baze chcesz wyszukac pol z opcją np. 4 to musisz uzyc logicznego AND
Analogicznie reszta. Proste, nieprawdaz? (IMG:style_emoticons/default/smile.gif) Cytat No ale przecież trzeba wziąć pod uwagę jaki będzie rozkład wartości 0 / 1. Najprawdopodobniej zdecydowana większość rekordów będzie miała wartość 1. Rekordy z activ=0 to będą (zapewne) nowe rekordy czekające na akceptację a zes sie uczepil tego active... post wyzej wyraźnie pokazuje ze są to opcje turystyczne i tam juz nie ma ze wszystkie są 1 (IMG:style_emoticons/default/smile.gif)
|
|
|
![]() ![]() |
![]() |
Aktualny czas: 6.10.2025 - 20:51 |