Ako písať SQL skripty
Kredit za obrázok: oatawa/iStock/GettyImages
SQL, alebo Structured Query Language, ktorý umožňuje vytváranie a úpravu databáz, je jedným z najjednoduchších webových programovacích jazykov na pochopenie. Napriek tomu sa veľa ľudí neobťažuje učiť sa detaily SQL, pretože správcovia databáz, ako je phpMyAdmin, vám umožňujú vytvárať, upravovať a prezerať tabuľky bez znalosti akéhokoľvek kódu. Naučiť sa písať svoje vlastné SQL skripty nie je príliš časovo náročné a ukáže sa ako mimoriadne užitočné pri vytváraní webových stránok naplnených údajmi.
Skúmanie syntaxe SQL
Naučte sa správnu syntax SQL. Tradične sú všetky príkazy SQL písané veľkými písmenami, zatiaľ čo názvy tabuliek a všetky vaše osobné údaje polí sú písané malými písmenami. Rovnako ako v PHP, všetky príkazy končia bodkočiarkou, ale tieto príkazy môžu byť rozdelené do samostatných riadkov ľubovoľným spôsobom (pre lepšiu čitateľnosť).
Video dňa
Skúmanie dátových typov SQL
Oboznámte sa s typmi údajov SQL – spôsob, akým SQL identifikuje informácie, ktoré máte vo všetkých poliach vo svojich tabuľkách. Najbežnejšie sú INT (pre celé čísla v rozmedzí od -2 miliárd do 2 miliárd), BIGINT (pre celé čísla väčšie alebo menšie, VARCHAR (text do 256 znakov) a TEXT (text do cca 64 000 znakov).
Pochopte potrebu primárnych kľúčov. V praxi bude mať každá tabuľka, ktorú vytvoríte, stĺpec „ID“ obsahujúci jedinečné číslo – označené ako „primárny kľúč“ – aby sa zabezpečilo, že žiadny „záznam“ (alebo riadok) nebude rovnaký.
Vytvorenie novej tabuľky
Vytvorte tabuľku v databáze pomocou príkazu CREATE TABLE. Počas praxe budete často vytvárať rovnakú tabuľku znova a znova, takže je to často užitočné predchádzať tomu príkazom DROP TABLE IF EXISTS, aby sa údaje nezačali prelievať a zmiasť vy. Tu je prvá vec, ktorú by ste napísali, aby ste vytvorili tabuľku s názvom „filmy“: DROP TABLE IF EXISTS movies; CREATE TABLE filmy ();
Pridajte názvy polí alebo stĺpcov do tabuľky. Zatiaľ sú „filmy“ úplne prázdne. Ak ho chcete vyplniť údajmi o svojich obľúbených filmoch, možno budete chcieť stĺpec „Názov“, stĺpec „Režisér“ a stĺpec „Rok“ – okrem stĺpca „id“, ktorý obsahuje primárny kľúč. Tieto informácie pridáte do zátvoriek riadku CREATE TABLE.
Všimnite si, že za každým názvom poľa musíte deklarovať, o aký typ údajov ide. Okrem toho, zatiaľ čo SQL automaticky určuje dĺžku celých čísel, musíte deklarovať maximálnu dĺžku všetkých textových údajov. Vo vyššie uvedenom kóde teda položky v poli „názov“ nemôžu byť dlhšie ako 60 znakov a položky v poli „riaditelia“ nemôžu byť dlhšie ako 30.
Vkladanie údajov do tabuľky
Pridajte údaje do svojich tabuliek. Teraz máte tabuľku s názvom „filmy“ so stĺpcami pre primárny kľúč filmu, názov, režiséra a rok, ale v týchto stĺpcoch nie je nič. Ak chcete pridať údaje, použite príkaz INSERT INTO. Údaje sa vkladajú po jednom zázname (riadku). Takže pod všetkým kódom CREATE TABLE zhora by príkazy INSERT INTO vyzerali asi takto: INSERT INTO movie VALUES (null, 'Casablanca', 'Michael Curtiz', 1942); INSERT INTO movie VALUES (null, 'Star Wars', 'George Lucas', 1977); INSERT INTO movies VALUES (null, 'Psycho', 'Alfred Hitchcock', 1960);
Na získanie konkrétnych informácií z tabuľky použite príkaz SELECT. Keď používate správcu databáz, ako je phpMyAdmin, umožňuje vám to rýchlo získať údaje, ktoré potrebujete. Ak si chcete pozrieť názvy filmov vo svojej tabuľke, napíšte: VYBERTE názov z filmov; Ak si chcete pozrieť celú tabuľku, použite hviezdičku: SELECT * FROM videos; Ak chcete byť konkrétny, použite príkaz WHERE: SELECT title FROM movies WHERE director = 'Alfred Hitchcock'; To by vytiahol názov každého filmu vo vašej tabuľke režiséra Alfreda Hitchcocka. Ak ste sa rozhodli, že potrebujete ďalší Hitchcockov film, znova použite príkaz INSERT: INSERT INTO movies VALUES (null, 'North by Northwest', 'Alfred Hitchcock', '1956');
Úprava vašich údajov
Upravte svoje údaje pomocou príkazov UPDATE a SET. Vo vyššie uvedenom príklade je dátum pre „North by Northwest“ nastavený na rok 1956. To je nesprávne; v skutočnosti bol vydaný v roku 1959. Aby ste chybu napravili, napíšte: AKTUALIZOVAŤ NASTAVENIE filmov rok = '1959' WHERE title = 'Na sever od severozápadu';
Vymažte údaje pomocou príkazu DELETE FROM. Ak sa rozhodnete, že už vás „Psycho“ nebaví a chcete sa ho zbaviť, napísali by ste: VYMAZAŤ Z filmov, KDE id = 3; Všimnite si vo vyššie uvedenom príkaze, že „Psycho“ sa vymaže na základe primárneho kľúča, nie názvu. Mohli by ste napísať len: VYMAZAŤ Z filmov, kde názov = "Psycho"; Čo ak by však vo vašej tabuľke bol ďalší film s názvom „Psycho“, na ktorý ste zabudli? Obaja by boli vymazaní. Pri používaní DELETE buďte veľmi opatrní.