Creați un tabel cu nume dinamic - saturație în stivă în limba rusă

  1. În ceea ce privește crearea de tabele în MySQL, recomand să citiți documentația.
  2. Verificați dacă tabelul există așa cum aveți în cod - este greșit. Dacă tabela nu există, atunci o încercare de accesare a acesteia cu o interogare va provoca o eroare și execuția va întrerupe. Tabelul poate fi creat cu indicația dacă nu este existent. Acesta va fi creat numai dacă același tabel din baza de date nu există.
  3. Variabilă cu numele tabelului este foarte de dorit să filtrați caracterele inutile. Parțial, folosind mysql_real_escape_string (). parțial - propriul filtru (numele nu este un șir).
  4. Creați un tabel cu numele primit din exterior - un potențial orificiu de securitate.
  5. Și, în sfârșit, crearea de tabele în timpul runtime este un ton rău. Cu excepția cazurilor în care se dezvoltă scripturi de instalare automată. Dar, de obicei, acest script funcționează o dată și apoi este șters.






Dacă am înțeles corect structura tabelului creat, atunci scriptul SQL pentru a-l crea în cazul tău ar arăta cam așa:







Aceasta este construcția pe care trebuie să o puneți într-un șir și să alimentați mysql_query ().

Vă mulțumim pentru recomandări! Și, în sfârșit, crearea de tabele în timpul runtime este un ton rău. Cu excepția cazurilor în care se dezvoltă scripturi de instalare automată. Dar, de obicei, acest script funcționează o dată și apoi este șters. Trebuie doar să stochez informații despre timpul de înregistrare pentru fiecare zi. Pentru a crea de fiecare dată aceste mese manual cumva nu vreau. Și nu m-am gândit la alt mod. - Радик Камалов în 21 februarie 2012 la ora 8:37

Pentru aceasta, nu este necesar să creați câte o masă nouă de fiecare dată. Este suficient să creați una cu cheia primară pentru câmpul de tip DATETIME. Și scrie acolo de fiecare dată valoarea funcției SQL NOW () (data curentă dată). Și pentru SELECT-eșantionare orice slice de informații în SQL există lucruri cum ar fi condițiile, sortarea și gruparea. - KiTE 21 februarie '12 la 15:50







Articole similare

Trimiteți-le prietenilor: