Sådan skriver du SQL-scripts
Billedkredit: oatawa/iStock/GettyImages
SQL, eller Structured Query Language, som giver mulighed for oprettelse og redigering af databaser, er et af de nemmeste webbaserede programmeringssprog at forstå. Alligevel gider mange mennesker ikke lære ins og outs af SQL, fordi databaseadministratorer såsom phpMyAdmin giver dig mulighed for at oprette, redigere og se tabeller uden at kende nogen kode. At lære at skrive dine egne SQL-scripts er ikke alt for tidskrævende, og det vil vise sig at være enormt nyttigt, når du opretter datafyldte websteder.
Udforskning af SQL-syntaks
Lær korrekt SQL-syntaks. Traditionelt er SQL-kommandoer alle med store bogstaver, mens navnene på dine tabeller og alle dine personlige feltdata er med små bogstaver. Som i PHP ender alle udsagn med semikolon, men disse udsagn kan opdeles i separate linjer, som du vil (for at hjælpe med læsbarheden).
Dagens video
Undersøgelse af SQL-datatyper
Gør dig bekendt med SQL-datatyper - den måde SQL identificerer den information, du har i alle felterne i dine tabeller. De mest almindelige er INT (for heltal fra -2 milliarder til 2 milliarder), BIGINT (for heltal større eller mindre end det), VARCHAR (tekst op til 256 tegn) og TEXT (tekst op til ca. 64.000 tegn).
Forstå behovet for primærnøgler. I praksis vil hver tabel, du opretter, have en "ID"-kolonne, der indeholder et unikt nummer - mærket "primær nøgle" - for at sikre, at ingen "post" (eller række) er ens.
Oprettelse af en ny tabel
Opret en tabel i din database ved at bruge kommandoen CREATE TABLE. Under din praksis vil du ofte oprette den samme tabel igen og igen, så det er ofte nyttigt at gå forud med kommandoen DROP TABLE IF EXISTS, så data ikke begynder at vælte ud og forvirre du. Her er den første ting, du ville skrive for at oprette en tabel kaldet "film": SLIP TABEL, HVIS ER FINDER film; OPRET TABEL-film ();
Tilføj feltnavne eller kolonnenavne til tabellen. Indtil videre er "film" helt tomt. For at udfylde det med data om dine yndlingsfilm, vil du måske have en "Titel"-kolonne, en "Instruktør"-kolonne og en "År"-kolonne - ud over kolonnen "id", der indeholder den primære nøgle. Du tilføjer disse oplysninger inden for parenteserne på linjen CREATE TABLE.
Bemærk, at du efter hvert feltnavn skal angive, hvilken type data det er. Desuden, mens SQL automatisk bestemmer længden af heltal, skal du erklære den maksimale længde af alle tekstdata. Så i ovenstående kode må indtastninger i feltet "titel" ikke være længere end 60 tegn, og indgange i feltet "direktører" må ikke være længere end 30.
Indsættelse af data i din tabel
Tilføj data til dine tabeller. Du har nu en tabel kaldet "film" med kolonner for filmens primære nøgle, titel, instruktør og år, men intet i disse kolonner. For at tilføje data skal du bruge kommandoen INSERT INTO. Data indsættes én post (række) ad gangen. Så under al CREATE TABLE-koden fra oven ville INSERT INTO-kommandoerne se nogenlunde sådan ud: INSERT INTO movies VALUES (null, 'Casablanca', 'Michael Curtiz', 1942); INSERT INTO movies VALUES (null, 'Star Wars', 'George Lucas', 1977); INSERT INTO movies VALUES (null, 'Psycho', 'Alfred Hitchcock', 1960);
Brug kommandoen SELECT til at hente specifik information fra en tabel. Når du bruger en database manager såsom phpMyAdmin, giver dette dig mulighed for hurtigt at få de data, du har brug for. Hvis du vil se på titlerne på filmene i din tabel, skriver du: VÆLG titel FRA film; Hvis du vil se på en hel tabel, skal du bruge en stjerne: VÆLG * FRA film; Hvis du ønsker at blive specifik, så brug WHERE-kommandoen: SELECT title FROM movies WHERE director = 'Alfred Hitchcock'; Det ville trække navnet op på hver film i din tabel instrueret af Alfred Hitchcock. Hvis du besluttede, at du skulle bruge endnu en Hitchcock-film, skal du blot bruge kommandoen INSERT igen: INSERT INTO movies VALUES (null, 'North by Northwest', 'Alfred Hitchcock', '1956');
Redigering af dine data
Rediger dine data ved hjælp af UPDATE og SET kommandoerne. I ovenstående eksempel er datoen for "North by Northwest" sat til 1956. Det er forkert; den blev faktisk udgivet i 1959. For at rette fejlen, ville du skrive: OPDATERE film SET år = '1959' WHERE title = 'North by Northwest';
Slet data ved at bruge kommandoen DELETE FROM. Hvis du beslutter dig for, at du ikke bryder dig om "Psycho" længere og vil slippe af med det, ville du skrive: SLET FRA film WHERE id = 3; Bemærk i ovenstående kommando, "Psycho" slettes baseret på dens primære nøgle, ikke dens titel. Du kunne bare skrive: SLET FRA film WHERE title = "Psycho"; Men hvad nu hvis der var en anden film i dit bord kaldet "Psycho", som du glemte? De ville begge blive slettet. Vær meget forsigtig, når du bruger DELETE.