kukix
4.12.2013, 14:12:02
Witam.
Mam problem z zapisaniem do jednego pola bazy kilku danych z checkboxa.
Posiadam checkboxy, kóre posiadają wartości 1 2 3 4 i 5.
teraz mam tabele w bazie, gdzie są wpisuy
ID, NAZWA , POLE CHECKBOX
1, WPIS_1, 2 i 3
2, WPIS_2, 2
3, WPIS_3, 1 i 3
4, WPIS_4, 1 i 2
5, WPIS_5, 2
Prosze mi podpowiedziec, jak przetrzymywac te dane, żebym mógł sobie łatwoe wybrac wpisy, których to ple check box wybosi np 2 ?
Próbowąłem kiedys zapisywac z uzyciem średnika czyli np: ";2;3;" i później wyszukac LIKE "%;2;%", jednak ma to być na stronie głownej a dyrektywa LIKE jest mało wydajna. Jest jakiś inny sposób?
Crozin
4.12.2013, 15:20:09
W zależności od tego co tam konkretnie ma się znajdować, powinieneś albo rozbić to na dwie tabele połączone relacją jeden-do-wielu jak sugeruje @mmmmmm - niemal zawsze jest to jedyne poprawne i szybkie rozwiązanie, albo skorzystać z typu SET dla kolumny, która ma przechowywać wiele wartości oraz funkcji FIND_IN_SET() przy wyszukiwaniu.
kukix
4.12.2013, 15:33:59
Cytat(Crozin @ 4.12.2013, 17:20:09 )

W zależności od tego co tam konkretnie ma się znajdować, powinieneś albo rozbić to na dwie tabele połączone relacją jeden-do-wielu jak sugeruje @mmmmmm - niemal zawsze jest to jedyne poprawne i szybkie rozwiązanie, albo skorzystać z typu SET dla kolumny, która ma przechowywać wiele wartości oraz funkcji FIND_IN_SET() przy wyszukiwaniu.
Dziekuje za konkretną odpowiedź.
Czy mógłbyś jeszcze podpowiedziec, który sposób byłby wydajniejszy?.
Nigdy nie stosowałem kolumna typu SET i troche boje się nowego

problem tez jest dosyc pilny i nie mam zbyt duzo czasu na badania :/
nospor
4.12.2013, 15:40:59
Jesli chodzi o wyszukiwanie to zapewne bedzie lepsza dodatkowa tabela.
Jesli chcesz nadal wszystko miec w jednej kolumnie to tutaj to dosc szczegolowo opisalem:
http://nospor.pl/opcje-dwuwartosciowe-przechowywanie.html
kukix
6.12.2013, 12:30:12
Cytat(nospor @ 4.12.2013, 17:40:59 )

Jesli chodzi o wyszukiwanie to zapewne bedzie lepsza dodatkowa tabela.
Jesli chcesz nadal wszystko miec w jednej kolumnie to tutaj to dosc szczegolowo opisalem:
http://nospor.pl/opcje-dwuwartosciowe-przechowywanie.htmlDziekuje z podpowiedz.
Temat będe musiał na spokojnie rozpracowac.
Obenie dodałem dwie komórki z danymi i to wystarczyło, w wolnej chwili zapoznam się z tym arrttkułem.
Dziekuje jeszcze raz Panowie za pomoc.