[MYSQL] Tworzenie tabel podczas pracy programu.

0

Witam, mam system w którym tabele mają byc tworzone w czasie pracy programy.
Klient ma możliwość dodawania modułów, jeżeli go doda wpisuje nazwy pól , liiczba pól moze byc różna. Ale w jaki sposób tworzyc azwy tych pól w bazie?
Np. ktoś sobie wpisze takie:

  1. Opis krótki
  2. Opis długi
  3. Częstotliwość
    I teraz w jakis sposób zrobić create ? W jaki sposób utworzyć nazwy pól ?
0

Ale jak 'utworzyc nazwy pol'? Nie mozesz po prostu poskladac create table w zaleznosci od tego co wybral?

0

Jeśli potrzebujesz przechowywać bardzo różnorodne dane to mnożenie tabel może być kłopotliwe.
U siebie założyłem jedną dodatkową tabelę na dane nie typowe. Każdy wiersz zawiera odwołanie do tabeli głównej,nazwę parametru i wartość:

create table tabela_glowna(
  id int,
  wartosc1 ... ,
  wartosc2 ...);

create table tabela_dadatkowa(
  tabela_glowna_id int,
  nazwa_parametru varchar(...),
  wartosc_parametru varchar(...)
);

"tabela_dadatkowa.tabela_glowna_id" jest relacją do "table tabela_glowna.id".

W praktyce mam w ten sposób tabelę z dynamicznie zmieniającą się liczbą kolumn, przynajmniej pod względem funkcjonalnym. Rozwiązanie działa produkcyjnie od 2 lat i się sprawdziło.

1 użytkowników online, w tym zalogowanych: 0, gości: 1