Nový kurz: SQL databázy - MySQL a SQLite

napísal , 6 Apr 2017 [ PHP SQL Tutoriály Videá ]

V PHP kurze som sa obtrel o databázy, ale zaslúžia si viac.
Napríklad vlastný kurz!

Nový Webrebel kurz: SQL databázy - MySQL a SQLite

Databáza drží údaje dovolí ti pridávať nové, upravovať a mazať existujúce a vyberať špecifický subset na základe podmienok. Ak si napríklad v e-shope vyberieš kategóriu "vysávače", nechceš tam vidieť klobásy. Preto si potrebuješ správne navrhnúť databázu a klásť jej správne otázky.

Okrem toho údaje v databáze vieš analyzovať, robiť medzi nimi výpočty a štatistku. Koľko červených kolobežiek sa predalo v druhý pondelok tretieho mesiaca poobede? Databáza sa nepýta prečo to potrebuješ vedieť, ale ak jej dáš správnu žiadosť, dostaneš správnu odpoveď.

ukážka z kurzu, je tam zopár videí s teóriou a zopár, kde búcham SQL kód jak ďábel

Všetky príspevky na sociálnej sieti, všetky produkty v e-shope, všetky príspevky na tomto blogu sú uložené v databáze.Kontakty a SMSky v telefóne? Databáza. Že ti to zobrazí správne číslo, keď začneš písať "babka"? Správna žiadosť na databázu.

Žiadosti na databázu robíš pomocou jazyka SQL. V tomto kurze ťa naučím písať SQL kód a vysvetlím ti, ako sa databáza a programovací jazyk spravia sladkú, sladkú lásku a porodia stránku alebo aplikáciu.

SQL je všeobecný jazyk na komunikáciu s konkrétnym databázovým systémom. To znamená, že kopa SQL príkazov funguje rovnako pri akejkoľvek databáze. Pri aplikáciách a stránkach a startupoch fičia MySQL a SQLite, ktoré používam v tomto kurze.

Ktorý si môžeš kúpiť za prudko sexuálnych 69 eur.
69, nice.

Samozrejme kto má predplatné, dostane tento kurz zdarma.


Tematicky sa kurz skladá z troch častí:

V PRVEJ ČASTI rozprávam o databázach všeobecne. Naučím ťa relačné databázové systémy. Tak sa mal ten kurz volať pôvodne - Relačné databázy: MySQL a SQLite - ale SQL databázy vraj znelo lepšie. Asi nejaké SEO biznis dôvody, pfft. V relačných databázach delíme všetko do tabuliek, ktoré spolu prepájame pomocou vzťahov.

Napríklad táto stránka eviduje príspevky, komentáre a autorov. To znamená, že má tabuľky s názvami príspevky, komentáre a autori. Nemá. Vidíš, už ti klamem a ešte si si ani nič nekúpil. Toto je WordPress, takže tie tabuľky sa naozaj volajú wp_posts, wp_comments a wp_users, ale o to nejde, neviem, prečo sa na také detaily zameriavaš, pointa je, že všetky údaje rozdelíš do tabuliek a spravíš medzi nimi prepojenia. Ináč mám aj WordPress kurz, baaam ďalšia reklama, cha-ching!

Prepojenia medzi tabuľkami hovoria, že každý komentár patrí príspevku a každý príspevok patrí autorovi a vďaka tomu sa pod každým príspevkom zobrazia iba jeho komentáre a navyše podľa čítanosti príspevkov môžeme robiť štatistiky úspešnosti autorov alebo čokoľvek iné si zmyslíš v tvoj hlavej krásnej, brčkavej.

A tiež ti vysvetlím rozdiely medzi MySQL, PostgreSQL, Oracle, SQLite a NoSQL.
NoSQL neskôr dostane samostatný online kurz.

DRUHÁ ČASŤ tvorí jadro kurzu. Tu ťa naučím písať skutočný SQL kód s praktickými ukážkami na ozajstnej databáze. Naučím ťa vytvárať databázy, spravovať ich, spúšťať databázové príkazy. Naučíš sa písať tzv. SQL queries, dopyty na databázu, tie spomínané žiadosti. Používam tu MySQL, ale jazyk SQL je všeobecný, takže príkazy, ktoré sa naučíš, fungujú aj pri PostgreSQL, SQLite či Oracle.

Teraz... ak máš PHP kurz, budeš tú databázu poznať. Tam som sa jej ale venoval čisto v teórii, tu okolo nej vystaviam naozajstnú aplikáciu. A namiesto MySQL, ako bolo v PHP kurze, ju spravím v SQLite. V tretej časti kurzu. Samozrejme aj MySQL časť bude rozšírená o nové a pokročilé veci, collation, indexy, key constraints, povieme si niečo o optimalizácii, možno nejaký ten fulltext search... takže neboj, kopa nového. Plus vyrobím kompletne novú PHP aplikáciu! Takže môžeš zobrať šecek svoj PHP knovlidž a rozšíriť ho o ďalšie veci!

V TRETEJ ČASTI vezmem spomínanú databázu, preklopím ju do SQLite a vystaviam okolo nej skutočnú aplikáciu. SQLite používaš práve teraz, pretože túto stránku čítaš v prehliadači. Alebo na telefóne. Prehliadače si tam ukladajú nastavenia, iOS, Android, Windows 10 používajú SQLite, OSX na ňom beží. Herné konzole, drony, autá, lietadlá a všemožné smart zariadenia používajú SQLite databázy, pretože sú svižné a šikovné. Ako ty. Ak si kúpiš kurz. Ak nie, tak si pomalý a smradľavý. (Nie si, si krásny. A krásna. Všetci sme. [Nie sme.])

SQL databázy: MySQL a SQLite sa bude dať kúpiť tu.

  1. Šťavnatý úvod do databáz
  2. To nádherné súznenie medzi SQL a aplikáciami
  3. Relačné databázy a úvod do sexuálnych vzťahov
  4. Tučný ERD diagram, jeden obrázok za tisíc vťahov
  5. SQL vs. MySQL vs. PostgreSQL vs. MSSQL vs. Oracle vs. the World
  6. vs. SQLite vs. NoSQL (MongoDB, CouchDB, Redis) vs. Dracula 3000

rozbaliť zvyšné epizódy

  1. SQL Queries, škandalózne neslýchané IDčka, URL adresy
  2. Poď, poď, insťaluj server databázový, objav phpMyAdmin boľavý
  3. Kreácia databázy, čo je Collation, utf8mb4, starý/dobrý import/export
  4. Login do databázy, vstúp do nej na hostigu, objav DB nástroje
  5. MySQL SELECT, SQL funkcie, naformátujem ti dátum, peňáz, text
  6. MySQL SELECT, stránkovanie, limity, štatistické funkcie
  7. MySQL INSERT, strčím ti tam hodnotu, NULL, DEFAULT
  8. MySQL NULLIF, ako na sladké diery v databáze a IS NULL prázdnotu
  9. MySQL UPDATE, upravím ti, INSERT ON DUPLICATE KEY UPDATE
  10. MySQL DELETE, TRUNCATE, CREATE, DROP, zničím ťa komplet
  11. MySQL LIKE, pokročilý SELECT, hľadanie v názvoch, COUNT() riadkov
  12. MySQL JOIN, spojenie viacerých tabuliek, jak tá scéna z avatara
  13. MySQL RIGHT JOIN, LEFT JOIN, INNER JOIN, zo všetkých strán
  14. MySQL OUTER JOIN, UNION (nie tá poisťovňa) ALIAS (nie ten seriál)
  15. MySQL SUBQUERY vs JOIN, Inception medzi queries, zopakujem ti
  16. MySQL GROUP BY, HAVING, DISTINCT, poradia SQL príkazov
  17. MySQL CREATE, vytváranie databázy, dátové typy, milión nedáš
  18. MySQL TRIGGER, keď sa stane niečo, nech sa stane niečo iné
  19. MySQL PIVOT tabuľky, VZŤAHY 1:N, 1:1, M:N, funkcia GROUP_CONCAT
  20. Nie sú tie PIVOT tabuľky zbytočne zložité? Kecajme radšej o kritikoch
  21. Niekedy stačí viac jednoduchších queries namiesto veľkého GROUP BY
  22. MySQL GROUP BY ešte raz, pretože naň nestačí jedno video
  23. 29 MySQL GROUP BY na ŠTATISTIKU cez zlúčenie viacerých riadkov pod jeden
  24. 30 INDEXy pre zrýchlenie databázy, typy, na kerý stĺpec INDEX dať
  25. 31 STORED PROCEDURES, vlastné funkcie, LOOP REPEAT SQL príkazov, UNIQUE index
  26. MySQL EXPLAIN, rýchlosť SELECTu s a bez INDEXU, kedy ich nepoužívať
  27. MySQL cez KONZOLU, kde si databáza ukladá súbory na disku?
  28. MySQL cez KONZOLU 2, tipy & triky & výhody konzole oproti GUI programu
  29. MySQL STORAGE ENGINES, InnoDB vs MyISAM vs MariaDB (to si nečakal)
  30. SQL TRANSAKCIE a praktické porovnanie InnoDB vs MyISAM
  31. vs CSV vs MEMORY vs BLACKHOLE vs FREDDY vs JASON
  32. MySQL FULLTEXT SEARCH vyhľadávanie vs WHERE LIKE porovnávanie
  33. FULLTEXT INDEX, porovnávanie slov podľa toho ako znejú cez SOUNDEX
  34. FULLTEXT IN NATURAL LANGUAGE MODE vs IN BOOLEAN MODE
  35. vs WITH QUERY EXPANSION, pravidlá FULLTEXT indexu, rozdiely v InnoDB/MyISAM
  36. MySQL FOREIGN KEY CONSTRAINTS, ochrana hodnôt v DB, automatické mazanie
  37. ON UPDATE DELETE CASCADE, auto-mazanie z dcérskej tabuľky, komplet deštrukcia
  38. MySQL neni na prd, inak by som nerobil kurz;) Zmena DEFAULT nastavení
  39. Zmena MySQL nastavení cez konfiguračný súbor, moja prosba, KONIEC MySQL
  40. SQLite, najpoužívanejší databázový systém, výhody a nevýhody a tak vôbec
  41. Lumen, API aplikácie, PHP frameworky, náradie a nástroje pre SQLite
  42. SQLite Tools, SQLPro for SQLite, SQLiteManager, sqlite3 cez konzolu
  43. SQLite Tools, phpLiteAdmin, Adminer pre SQLite, PHPStorm
  44. SQLite cez Adminer, Adminer pluginy, témy a VYTVORENIE SQLite databázy
  45. Rozdiely v MySQL a SQLite kóde, SQLite dátové typy a CREATE syntax
  46. Rozdiely v queries a funkciách medzi MySQL a SQLite, encoding pre emojis
  47. Lumen ako rozcestník a ako zistíš, či tvoje PHP podporuje SQLite
  48. Vyrobíme API appku, napojenie na SQLite databázu, SQL injection
  49. Views, Templates, HTML šablóny, vyskladanie HTML stránky okolo údajov z DB
  50. Master Layout, sub-šablóny, prepojenie adresy stránky s údajmi v databáze
  51. Dizajn stránky, Lumen vs Laravel dokumentácia, DEFAULT pre yield()
  52. Lumen a Laravel COLLECTIONS
  53. Blade PARTIALS, dokončenie dizajnu stránky
  54. JOIN na tabuľku režisérov, Blade komentáre
  55. MVC (Model, View, Controller) a Refactoring kódu
  56. Model / Eloquent, PHPDoc komentáre divné šialené o čom sú?
  57. Model / Manuálne, SELECT pre režisérov
  58. POST Request, Method POST, SQL INSERT pre vkladanie nového režiséra
  59. SQLite Sequence Reset pre ne-diery, profil rejžu, nový film
  60. Profil režiséra, TODO komentáre a okno, BLADE podmienky
  61. Predvyznačenie SELECTu, listovanie podľa žánru, tipy/triky, stránkovanie
  62. PAGINATION (stránkovanie), EDIT a DELETE linky
  63. nice (UPDATE, DELETE, editácia a mazanie režisérov a filmov)
  64. Databázy v PHPStorm a srdcervúci záver, fňuk

Edit (07. 4. 2017): pridal som 5 nových epizód.
Edit (17. 4. 2017): pridal som 7 nových epizód (od 26. ďalej)
Edit (03. 5. 2017): pridal som 12 nových epizód (od 33. ďalej)
Edit (04. 5. 2017): ďalšie video, MySQL časť hotová, ideme na SQLite a frameworky
Edit (15. 5. 2017): 7 nových videí, venujú sa SQLite (od 46. ďalej)
Edit (21. 5. 2017): 8 nových Lumen a SQLite videí (od 53. ďalej)
Edit (01. 6. 2017): posledných 10 videí, KONIEC

Práve teraz vyrábam ďalšie videá o GROUP BY, KEY CONSTRAINTS, databázových INDEXOCH, ENGINOCH, konzolových príkazoch, potom si ukážeme FULLTEXT SEARCH, pokecáme o OPTIMALIZÁCII, potom bežím na SQLite a Lumen.

Ak to tu sleduješ, vieš jak to chodí. Kurz ešte nie je hotový, ale môžeš naskočiť za behu. Postupne budem pridávať videá, hneď ako každé z nich dokončím. Hneď ti ho tam šupnem. Odhadujem, že ich dokopy bude okolo 50. Tento zoznam budem upravovať, vždy keď dokončím novú várku. Poviem ti aj v komentároch.

V SQLite časti kurzu budem používať PHP. Ak nevieš PHP, nevadí, ber to len ako spestrenie. Robím to preto, lebo nemám rád, keď niekto ukáže iba teóriu. To je síce fajn, že ťa naučím písať SQL príkazy a budeme sa kukať na tabuľky celý deň, ale ja ti to chcem ukázať v skutočnom svete. Čo ten výstup z tabuľky naozaj znamená? Keď spravím SELECT, ako z toho vznikne appka? To je fajn, že môžem napísať INSERT, ale ako sa zo stránky dostanú údaje do databázy naozaj?

Ak vieš PHP, super. Ak nevieš, pozri si videá zo záujmu, nech vidíš, ako stránky a aplikácie vznikajú. Ako sa dizajn stránky prelína s dizajnom databázy, ako spolu komunikujú šablóny, databázy a programovacie jazyky aby vytvorili niečo naozajstné. A možno ťa to nakopne k tomu, aby si sa PHP naučil. Bude sranda, neboj nič.

Dobre, takže kupuj SQL kurz tu.

Ak chceš nové info o všetkom, choď na facebook.com/yablko.smrdi.
Ak chceš ďalšie moje videá, choď na youtube.com/yablko.
Ak chceš všetky kurz na rok, skús predplatné.
Ak sa ti kurz páči, povedz kamošovi.
Povedz babke.

Brm!

napísal , 6 Apr 2017

9 komentárov

komentuj ku každému komentáru sa v databáze ukladá iba meno, text a dátum, iba za účelom zobrazenia pod článkom
neukladá sa email, IP adresa ani informácie o prehliadači a údaje sa nepoužívajú na reklamu, newsletter, na žiadnu ekonomickú aktivitu, nikam sa neposielajú, sú v databáze len aby sa mohli zobraziť pod článkom
  1. yablko [ Piatok 7.4.2017, 19:13 ]

    5 nových epizód pridaných

    MySQL SUBQUERY vs JOIN, Inception medzi queries, zopakujem ti
    MySQL GROUP BY, HAVING, DISTINCT, poradia SQL príkazov
    MySQL CREATE, vytváranie databázy, dátové typy, milión nedáš
    MySQL TRIGGER, keď sa stane niečo, nech sa stane niečo iné
    MySQL PIVOT tabuľky, VZŤAHY 1:N, 1:1, M:N, funkcia GROUP_CONCAT

  2. himak [ Streda 12.4.2017, 08:31 ]

    vo videu spomínaš, že bude appka cez LUMEN ? môžeme sa teda tešiť aj na malý tutoriál pre tento framework ?

  3. yablko [ Streda 12.4.2017, 14:29 ]

    hej hej, ale nebude to tak detailné, ako v laravel kurze
    budem viac robiť ako vysvetľovať

  4. yablko [ Pondelok 17.4.2017, 22:56 ]

    kým ty si dostával po vajci, ja som vyrábal nové videá

    26 Nie sú tie PIVOT tabuľky zbytočne zložité? Kecajme radšej o kritikoch
    27 Niekedy stačí viac jednoduchších queries namiesto veľkého GROUP BY
    28 MySQL GROUP BY ešte raz, pretože naň nestačí jedno video
    29 MySQL GROUP BY na ŠTATISTIKU cez zlúčenie viacerých riadkov pod jeden
    30 INDEXy pre zrýchlenie databázy, typy, na kerý stĺpec INDEX dať
    31 STORED PROCEDURES, vlastné funkcie, LOOP REPEAT SQL príkazov, UNIQUE index
    32 MySQL EXPLAIN, rýchlosť SELECTu s a bez INDEXU, kedy ich nepoužívať

    7 nových epizód v kurze

  5. yablko [ Streda 3.5.2017, 19:52 ]

    12 nových SQL videí:

    33 MySQL cez KONZOLU, kde si databáza ukladá súbory na disku?
    34 MySQL cez KONZOLU 2, tipy & triky & výhody konzole oproti GUI programu
    35 MySQL STORAGE ENGINES, InnoDB vs MyISAM vs MariaDB (to si nečakal)
    36 SQL TRANSAKCIE a praktické porovnanie InnoDB vs MyISAM
    37 vs CSV vs MEMORY vs BLACKHOLE vs FREDDY vs JASON
    38 MySQL FULLTEXT SEARCH vyhľadávanie vs WHERE LIKE porovnávanie
    39 FULLTEXT INDEX, porovnávanie slov podľa toho ako znejú cez SOUNDEX
    40 FULLTEXT IN NATURAL LANGUAGE MODE vs IN BOOLEAN MODE
    41 vs WITH QUERY EXPANSION, pravidlá FULLTEXT indexu, rozdiely v InnoDB/MyISAM
    42 MySQL FOREIGN KEY CONSTRAINTS, ochrana hodnôt v DB, automatické mazanie
    43 ON UPDATE DELETE CASCADE, auto-mazanie z dcérskej tabuľky, komplet deštrukcia
    44 MySQL neni na prd, inak by som nerobil kurz;) Zmena DEFAULT nastavení

    Venujú sa spúšťaniu MySQL cez konzolu, Storage Enginom a FULLTEXT vyhľadávaniu. To je ten klasický search na stránkach alebo v aplikáciách.

  6. yablko [ Štvrtok 4.5.2017, 19:04 ]

    a ďalšie

    45 Zmena MySQL nastavení cez konfiguračný súbor, moja prosba, KONIEC MySQL

    ideme na SQLite a frameworky

  7. yablko [ Pondelok 15.5.2017, 15:18 ]

    7 nových videí, tieto sú už o SQLite

    46 SQLite, najpoužívanejší databázový systém, výhody a nevýhody a tak vôbec
    47 Lumen, API aplikácie, PHP frameworky, náradie a nástroje pre SQLite
    48 SQLite Tools, SQLPro for SQLite, SQLiteManager, sqlite3 cez konzolu
    49 SQLite Tools, phpLiteAdmin, Adminer pre SQLite, PHPStorm
    50 SQLite cez Adminer, Adminer pluginy, témy a VYTVORENIE SQLite databázy
    51 Rozdiely v MySQL a SQLite kóde, SQLite dátové typy a CREATE syntax
    52 Rozdiely v queries a funkciách medzi MySQL a SQLite, encoding pre emojis

  8. yablko [ Nedeľa 21.5.2017, 17:28 ]

    8 nových Lumen a SQLite videí

    53 Lumen ako rozcestník a ako zistíš, či tvoje PHP podporuje SQLite
    54 Vyrobíme API appku, napojenie na SQLite databázu, SQL injection
    55 Views, Templates, HTML šablóny, vyskladanie HTML stránky okolo údajov z DB
    56 Master Layout, sub-šablóny, prepojenie adresy stránky s údajmi v databáze
    57 Dizajn stránky, Lumen vs Laravel dokumentácia, DEFAULT pre yield()
    58 Lumen a Laravel COLLECTIONS
    59 Blade PARTIALS, dokončenie dizajnu stránky
    60 JOIN na tabuľku režisérov, Blade komentáre

  9. yablko [ Štvrtok 1.6.2017, 19:46 ]

    posledných 10 Lumen a SQLite videí

    61 MVC (Model, View, Controller) a Refactoring kódu
    62 Model / Eloquent, PHPDoc komentáre divné šialené o čom sú?
    63 Model / Manuálne, SELECT pre režisérov
    64 POST Request, Method POST, SQL INSERT pre vkladanie nového režiséra
    65 SQLite Sequence Reset pre ne-diery, profil rejžu, nový film
    66 Profil režiséra, TODO komentáre a okno, BLADE podmienky
    67 Predvyznačenie SELECTu, listovanie podľa žánru, tipy/triky, stránkovanie
    68 PAGINATION (stránkovanie), EDIT a DELETE linky
    69 nice (UPDATE, DELETE, editácia a mazanie režisérov a filmov)
    70 Databázy v PHPStorm a srdcervúci záver, fňuk

    a týmto je SQL kurz o relačných databázach ukončený

    ...uff

ku každému komentáru sa v databáze ukladá iba meno, text a dátum, iba za účelom zobrazenia pod článkom
neukladá sa email, IP adresa ani informácie o prehliadači a údaje sa nepoužívajú na reklamu, newsletter, na žiadnu ekonomickú aktivitu, nikam sa neposielajú, sú v databáze len aby sa mohli zobraziť pod článkom