Szukam skanera, który wprowadzałby dane użytkownika do bazy danych MySQL, którą stworzyłem dla aplikacji fitness.

Doszedłem do punktu, w którym teraz potrzebuję skanera, aby zidentyfikować, do ilu kolumn powinien wprowadzić na podstawie danych wejściowych użytkownika.

Użytkownik jest pytany, do ilu zestawów chce wprowadzić (np. 2), i mam problem z utworzeniem kodu, który prosi użytkownika o dwukrotną wagę i powtórzenia, które chciałby wprowadzić.

Trudność polega na tym, że baza danych MySQL ma dużą liczbę zestawów, do których mogą wprowadzić (maksymalnie 10), ale chcę wprowadzić tylko te, które faktycznie ukończyli (w tym przypadku 2)

Jestem w tym początkującym i byłbym wdzięczny za każdą pomoc.

Dzięki.

0
user12399965 19 listopad 2019, 23:10
Jestem trochę zdezorientowany the database has a large amount of sets. Co dokładnie masz na myśli?
 – 
doompickaxe
19 listopad 2019, 23:28
Dzięki za odpowiedzi. Miałem na myśli to, że stworzyłem tabelę w MySQL, aby mieć zestaw 1, zestaw 2 itd. do 10. W każdym zestawie ma kolumnę na wagę i powtórzenia.
 – 
user12399965
19 listopad 2019, 23:33

1 odpowiedź

Nowy: posiadanie kolumn set_x_weight i set_x_reps dla każdego zestawu jest trochę dziwne i nie jest najlepszą praktyką.

Nowa tabela, która jest używana do odwoływania się do zestawu, byłaby naprawdę dobra.

Nowy po prostu miałby:

  • waga
  • powtórzeń
  • ćwiczenie_id

Aw starej tabeli potrzebny byłby tylko identyfikator, aby lepiej zidentyfikować wiersz.

Każdy zestaw zostałby dodany do nowej tabeli i możesz po prostu wykonać WYBÓR, w którym filtrujesz według exersice_id


Stary: Myślę, że musisz ponownie przemyśleć strukturę swojej tabeli (jeśli to możliwe). Nie zrobiłbym 10 tabel (po jednej dla każdego zestawu), ale jedną tabelę, która ma te kolumny:

  • waga
  • powtórzeń
  • set -> liczba określająca do jakiego zestawu należy dany wiersz

W ten sposób jest również łatwo rozszerzalny. Prawdopodobnie brakuje kolumn, takich jak data lub coś, co pozwoli lepiej rozróżnić wiersze.

Ale mając tylko jedną tabelę, nie musisz dynamicznie wstawiać do różnych.

0
doompickaxe 19 listopad 2019, 23:55
1
Moja aktualna baza danych ma następujące nagłówki: Data_utworzenia, Nazwa_programu, Nazwa_ćwiczenia, Suma_zestawów, Zestaw_1_Waga, Zestaw_1_Reps, Zestaw_2_Waga itd. aż do Zestawu 10. Przepraszamy, jeśli stwierdziłem, że w zestawie jest jedna tabela. Problem polega na tym, że chcę tylko przeskanować liczbę zapytań wprowadzonych przez użytkownika w „Total_Sets”
 – 
user12399965
19 listopad 2019, 23:47
Dzieki za sugestie. Mogę wymagać innych kolumn do celów wewnętrznych, ponieważ zamierzam oddzielić programy (program specyficzny dla SELECT) i odnieść się do postępu w czasie za pomocą kolumny Date_Created.
 – 
user12399965
20 listopad 2019, 03:45