Administrátor Ewwe 434 Odesláno: 17. Březen, 2017 Administrátor Share Odesláno: 17. Březen, 2017 Obsah: MariaDB MySQLi PDO Dibi 1. MariaDB MariaDB je fork klasického MySQL s vylepšeními ohledně výkonu. Pokud si můžete vybrat MariaDB by měla být jasná volba. Nejedno vývojové prostředí ( XAMMP nebo WAMP ) Vám dovolí si jednoduše vybrat mezi MySQL a MariaDB. 2. MySQLi MySQLi je náhrada za mysql co se týče PHP. Jelikož od verze 5.5 jsou funkce s prefixem mysql_ označené jako depreceated a od verze 7.0 jsou dokonce ostraněné. S MySQLi se dá pracovat buď procedurálně nebo objektovně. Připojení k DB ( procedurální ): $connection = mysqli_connect( "127.0.0.1","root","pwd", "konkretni_db" ); Připojení k DB ( objektové ): $mysqli = new mysqli( "127.0.0.1","root","pwd","konkretni-db"); Určitě si myslíte , že v tom momentálně není moc rozdíl. To přijde. V procedurálních funkcí je nutné doplňovat proměnnou $connection například $result = mysqli_query( $connection , "SELECT * FROM users" ); naproti tomu u objektového přístupu $result = $mysqli->query("SELECT * FROM users"); Prakticky to znamená , že do $mysqli je uložený objekt mysqli který obsahuje všechny potřebné informace vč. instance připojení Načítání výsledků z db je v obou případěch relativně stejné // procedurální while( $row = mysqli_fetch_assoc( $result ) ) { echo $row["user_name"]; } // objektové while( $row = $result->fetch_assoc() ) { echo $row["user_name"]; } Mě osobně přijde objektové využívání přehlednější než to procedurální. Ale v případě že budete při připojení používat mysqli tak je to jen na Vás. 3. PDO Já osobně PDO moc nefandím. Tak nějak mi nevyhovuje způsob zápisu a celý koncept. Ano chápu , že PDO je nové možná rychlejší , bezpečnější a propracovanější a nabízí několik nových možností jako například před-připravování queryn atd. Připojení k db pomocí PDO $pdo new PDO("mysql:host=127.0.0.1;dbname=konkretni_db;","root","pwd"); Vytvoření dotazu pomocí prepare: $statement = $pdo->prepare("SELECT * users WHERE user_name = ?"); $statement->execute(["Ewwe"]); $result = $statement->fetchAll(); Osobně se moc nechci pouštět do PDO jelikož mu tolik nerozumím. Raději nechám PDO na někoho povolanějšího. 4. Dibi Kde jsem ale naprosto jako doma je Dibi. Je to databázový layer vytvořený panem Davidem Grudlem , který stojí za jedním z nejpopulárnějších frameworků ( Nette ). Dibi bylo psáno za účelem ušetřit a ulehčit práci programátorům. Dibi přináší několik "featur" , které jsou podle mého názoru užasné a dnes bych si nedokázal představit pracovat s db bez Dibi. Dibi chci věnovat samostatný díl ( dnes , zítra ) protože ja tak natolik obsáhlé , že by se těžko slučovalo stímto návodem. To by bylo pro tento návod vše a v dalším se budu věnovat tady právě Dibi a Tracy 2 Link to comment Share on other sites More sharing options...
Invouk 91 Odesláno: 17. Březen, 2017 Share Odesláno: 17. Březen, 2017 Budeš aj niekde rozpisovať, to SQL ? či stačilo len rozdeliť DB ? Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 18. Březen, 2017 Author Administrátor Share Odesláno: 18. Březen, 2017 Jak to myslíš ? Link to comment Share on other sites More sharing options...
arci224 11 Odesláno: 18. Březen, 2017 Share Odesláno: 18. Březen, 2017 SQL druh databáze s.kterým php umí pracovat Link to comment Share on other sites More sharing options...
Fakerko_ 190 Odesláno: 18. Březen, 2017 Share Odesláno: 18. Březen, 2017 SQL druh databáze s.kterým php umí pracovat SQL je jazyk, nikoli databáze. Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 18. Březen, 2017 Author Administrátor Share Odesláno: 18. Březen, 2017 Jak říká Hnátek . Už jen když si vygooglíš co SQL znamená ( Structured Query Language ) Nebo tak něco jde o to L ( Language ). Link to comment Share on other sites More sharing options...
Invouk 91 Odesláno: 18. Březen, 2017 Share Odesláno: 18. Březen, 2017 Jak říká Hnátek . Už jen když si vygooglíš co SQL znamená ( Structured Query Language ) Nebo tak něco jde o to L ( Language ). Viem viem, len či to nahodou nechceš niekedy aj vysvetliť Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 18. Březen, 2017 Author Administrátor Share Odesláno: 18. Březen, 2017 Viem viem, len či to nahodou nechceš niekedy aj vysvetliť To bylo na toho arci. Až udělám dibi tak můžu udělat i SQL ale jako tam není nic moc co vysvětlovat mi přijde. SQL je hodně jednoznačný 1 Link to comment Share on other sites More sharing options...
ThomaSM 1 Odesláno: 27. Březen, 2017 Share Odesláno: 27. Březen, 2017 Súper návody veľmi pekne ďakujem Dúfam že budeš pokračovať ale budu niekedy návody aj na konkrétne veci? Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 27. Březen, 2017 Author Administrátor Share Odesláno: 27. Březen, 2017 Súper návody veľmi pekne ďakujem Dúfam že budeš pokračovať ale budu niekedy návody aj na konkrétne veci? co máš na mysli konkretne Link to comment Share on other sites More sharing options...
ThomaSM 1 Odesláno: 27. Březen, 2017 Share Odesláno: 27. Březen, 2017 (upraveno) co máš na mysli konkretne Napr register/login systém, alebo zo zložitejšieho napr CMS a tak. Edited 27. Březen, 2017 by ThomaSM Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 28. Březen, 2017 Author Administrátor Share Odesláno: 28. Březen, 2017 Uvidíme... Něco by se možná dalo Link to comment Share on other sites More sharing options...
ATomas 286 Odesláno: 28. Březen, 2017 Share Odesláno: 28. Březen, 2017 PDO je univerzalni db system. Tedy napises appku v PDO a pak si tam muzes nasadit MySQL, FireBird nebo cokoliv chces bez toho, aby jsi primo neco prepisoval v kodu. Zapisování SQL příkazu stylem "SELECT * users WHERE user_name = ?" Už je dneska standard, pomocí prepare a execute se da lehce předejít věcem jako SQL injection (kotrola a escapovaní znaků atp...) Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 28. Březen, 2017 Author Administrátor Share Odesláno: 28. Březen, 2017 PDO je univerzalni db system. Tedy napises appku v PDO a pak si tam muzes nasadit MySQL, FireBird nebo cokoliv chces bez toho, aby jsi primo neco prepisoval v kodu. Zapisování SQL příkazu stylem Už je dneska standard, pomocí prepare a execute se da lehce předejít věcem jako SQL injection (kotrola a escapovaní znaků atp...) Ano v PDO si můžeš zvolit engine databáze. Já osobně používám Dibi a to je podle mě ještě lepší než PDO samo o sobě. Návod na Dibi chci dopsat tento týden 1 Link to comment Share on other sites More sharing options...
ThomaSM 1 Odesláno: 28. Březen, 2017 Share Odesláno: 28. Březen, 2017 Uvidíme... Něco by se možná dalo Super, teším sa. Link to comment Share on other sites More sharing options...
clouder 0 Odesláno: 30. Březen, 2017 Share Odesláno: 30. Březen, 2017 Ano v PDO si můžeš zvolit engine databáze. Já osobně používám Dibi a to je podle mě ještě lepší než PDO samo o sobě. Vďaka čomu je lepšie? Vzhľadom na to, že si autor návodu, ktorý popisuje (chabo) a porovnáva (ako si to ty nazval) "databáze", očakávam od teba aj objektívne argumenty, prečo si zvoliť práve to API, ktoré ospevuješ. Link to comment Share on other sites More sharing options...
ATomas 286 Odesláno: 30. Březen, 2017 Share Odesláno: 30. Březen, 2017 Ano v PDO si můžeš zvolit engine databáze. Já osobně používám Dibi a to je podle mě ještě lepší než PDO samo o sobě. Návod na Dibi chci dopsat tento týden Každý databázový system použitý na amíru je lepší než PDO, ale jde o to jak velký projekt děláš, na kolika strojích pojede a každý stroj si si může nárokovat jiný DB systém. A pokud to pak máš nějak udržovat, tak je jednodužší PDO i za cenu toho, že bude o malinko pomalejší. Ale zase děláme weby, jestl ise stránka bude načítat 1s nebo 2s je úplně fuk Link to comment Share on other sites More sharing options...
Administrátor Ewwe 434 Odesláno: 30. Březen, 2017 Author Administrátor Share Odesláno: 30. Březen, 2017 Ale když pracuješ s tabulkou která má 80 giga a 150 miionu řadků....... Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now