![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 600 Pomógł: 2 Dołączył: 1.09.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
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? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 421 Pomógł: 310 Dołączył: 18.04.2012 Ostrzeżenie: (0%) ![]() ![]() |
Normalizacja
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 6 476 Pomógł: 1306 Dołączył: 6.08.2006 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
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.
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 600 Pomógł: 2 Dołączył: 1.09.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
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 ![]() |
|
|
![]()
Post
#5
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
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 -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 600 Pomógł: 2 Dołączył: 1.09.2002 Skąd: Wrocław Ostrzeżenie: (0%) ![]() ![]() |
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 Dziekuje 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. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 02:02 |