MySQL tábla létrehozása PHP-ban
Szóval mióta csak a programozást tanulgatom mindig phpmyadmin-ban készítettem el az adatbázis tábláit, de most arra jutottam, hogy elegem van a sok fölösleges kattintásból és inkább php-ben készítem el a táblákat.
Lenne ezzel kapcsolatban kérdésem. Szóval, ha egy táblának datetime formátumot szeretnék adni, akkor is mögé kell írni a default NULL-t? Valamint ha egy auto_increment és primary key-t szeretnék adni a mezőnek azt hogy kell jelezni? Jelezni kell hogy magyar utf-8-at szeretnék?
Eddig itt tartok:Elnézést ha kicsit fárasztó a kérdés, de mint a nevem is mutatja kezdő vagyok.
■ Lenne ezzel kapcsolatban kérdésem. Szóval, ha egy táblának datetime formátumot szeretnék adni, akkor is mögé kell írni a default NULL-t? Valamint ha egy auto_increment és primary key-t szeretnék adni a mezőnek azt hogy kell jelezni? Jelezni kell hogy magyar utf-8-at szeretnék?
Eddig itt tartok:
<?php
mysql_query("CREATE TABLE 'tablanev' (
'1mezo' int(11) default NULL (?),
'2mezo' varchar(10) default NULL,
'3mezo' dateime default NULL (?)
)ENGINE=MyISAM DEFAULT CHARSET=utf-8 (?);
");
?>
Amikor PHPMyAdminban
Egyébként szerintem egyszerűbb PHPMyAdminnal csinálni ezt a feladatot, mert általában nincs rá olyan sokszor szükség, egyszerűen használható a felülete, van benne hibaellenőrzés.
Egyébként szerintem
Szerintem, pedig jobb, ha megtanulja, hogyan kell kódból megoldani. Először is, tudja automatizálni az egész folyamatot, ha kell akár mikor le tudja futtatni, például amikor a fejlesztői könyezetből élesbe megy. Tud verziót követni benne. Azaz az egyik szerveren lehet a szoftver 1.0-s, míg a másikon egy 2.0-s változata, és az 1.0-t könnyű lesz frissíteni a következő verzióra csupán kód lefuttatásával, nem kell adatokat keresztbe kasul migrálni. Főleg ha azok már változtak valamelyik környezetben.
A MySQL kliens is ad vissza hibaüzenetet, csak ki kell íratni.
Szintén a napokban kezdtem én
Illetve az IF NOT EXISTS is hasznos lehet a CREATE TABLE után, mert nem dob figyelmeztetést, ha a tábla már létezik.
…Viszont nem vagyok biztos abban, hogy jó megoldás, ha mindig lefutattom először a táblákat létrehozó függvényét az adott modulnak… Mi a véleményetek erről?
IF NOT EXISTS
Az IF NOT EXISTS ott van,tehát a parancs végül is amit kiadtál a MySQL-nek nem teljesül,mert ha a táblád létezik, úgy sem fut végig.Manapság kezdtem el olvasgatni több adatbázis szerkesztéssel kapcsolatos érdekes PDF tanulmányt,melyeket így innen-onnan találtam,és szembe találkoztam az "Előkészített lekérdezéssel" én hasznosnak tartom,bár az MySQLi-s,nektek erről az Előkészített lekérdezésről mi a véleményetek,vagy tapasztalatotok? Nekem fekszik ez a dolog ,de kíváncsi vagyok a ti véleményetekre is.
Nem egészen
Nekem simán szokott lenni 20 adattáblám, ellenben egy-egy oldal legenerálásához nemigen kell 6-8-nál több query. Ehhez adnál hozzá 20 IF NOT EXISTS-et? Rossz ötlet.
Kifejtenéd részletesebben, mit értesz "Előkészített lekérdezés" alatt? Ha az amire gondolok, akkor nem csak "MySQLi-s".
Üdv
Nem vagyok még nagy guru a MySQL-ben,és ezért sem szeretnék okoskodni.Jó ha valaki kijavítja az adott dologról az álláspontomat.Én erről olvastam kipróbáltam,foglalkozok vele,de nem zárja ki azt hogy csak mysqli-s.
Lekérdezési terv
Izgalmas szitu, amikor bizonyos programfutási feltételek alapján kell "levegőben" összedobni egy SQL-t, akkor (is) lehet ez igen hasznos. Olvass minél több ilyet (ha jó doksi), ha belinkelnéd, hátha mondana valaki bővebb véleményt. Amit pedig olvastál, próbáld alkalmazni másutt is (nem csak MySQLi).
Lekérdezés
Hát én ebből néztem,
http://primeranks.net/yeti/University/III%20ev/II%20felev/Webtechnologiak/Eloadasok/14_adatbazis.pdf
meg innen onnan,a google a barátom,ott keresgélek mindenféle mysql+php doksik után,meg hát a manualok,meg van könyvem is :)
Köszi szépen a válaszokat, a
esetleg használj ORM lib-et
http://redbeanphp.com