Sådan skriver SQL-forespørgsler - detaljerede eksempler

Hver af os står over for på en regelmæssig basis og bruger forskellige databaser.Når vi vælger e-mail, vi arbejder med databasen.Databaser, der anvendes søgetjenester, banker til opbevaring af kundedata mv

Men trods den konstante brug af databasen, selv for mange udviklere af software-systemer er en masse "hvide pletter" på grund af forskellige fortolkninger af de samme vilkår.Vi giver en kort definition af nøglebegreber database før behandlingen af ​​SQL.So.

database - fil eller et sæt af filer til lagring ordnede datastrukturer og deres relationer.Meget ofte er den database, der kaldes database management system (DBMS).Database - dette er blot en samling af oplysninger i et bestemt format og kan arbejde med forskellige databaser.

Tabel - forestille den mappe, hvor dokumenter gemmes, grupperet efter visse egenskaber såsom en liste over ordrer i den sidste måned.Dette er en tabel i en computerdatabase.En separat tabel har sin egen unikke navn.

datatype - slags oplysninger lov til at blive opbevaret i en enkelt kolonne eller række.Det kan være bestemte tal eller tekst-format.

kolonne og række - vi alle arbejdet med regneark, som også er til stede i rækker og kolonner.Eventuelle relationelle databasetabeller virker på samme måde.Linjerne kaldes poster.

primær nøgle - hver række kan have en eller flere kolonner til sin unikke identifikation.Ingen primær nøgle er meget vanskeligt at udføre opdateringen, ændre og slette de krævede rækker.

Hvad er SQL?

query sprog SQL (. Eng Structured Query Language - Structured Query Language) blev kun designet til at arbejde med databaser og er i øjeblikket standarden for alle populære databaser.Syntaks består af et lille antal operatører og let at lære.Men på trods af den tilsyneladende enkelhed, det giver mulighed for etablering af SQL-forespørgsler til komplekse database operationer af enhver størrelse.

Siden 1992, er der en fælles standard, kaldet ANSI SQL.Den definerer den grundlæggende syntaks og funktioner af operatører, og understøttes af alle ledere DBMS markedsforhold såsom ORACLE Microsoft SQL Server.Overveje alle muligheder for sproget i en kort artikel er umuligt, så vi vil kort overveje kun de grundlæggende SQL-sætninger.Eksempler viser enkelhed og funktioner i sproget:

  • oprette databaser og tabeller;
  • data sample;
  • tilføje optegnelser;
  • ændring og sletning af oplysninger.

datatyper SQL

Alle kolonner i en databasetabel gemme den samme datatype.SQL-datatyper er de samme som i andre programmeringssprog.

datatype Beskrivelse
INT heltal
REAL Floating point
TEKST karakter streng af variabel længde
DATO sql"date" anmodning i forskellige formater
TID Time
CHAR tekststrenge af fast længde

oprette regneark og databaser

oprette nye databaser, tabeller og andre anmodningeri SQL Der er to måder:

  • SQL-sætning i konsollen databasen
  • Brug interaktive administrationsværktøjer, der udgør databaseserveren.

oprette en ny database operatør CREATE DATABASE & lt; navnet på den database & gt ;;.Som du kan se, er syntaksen enkel og lakonisk.

tabeller i databasen skaber --CREATE TABLE-sætning med følgende parametre:

  • tabelnavn
  • navne og kolonne datatyper

som et eksempel, oprette en tabel Commodity med følgende kolonner:

kolonne Beskrivelse
commodity_id ID Product
vendor_id ID-udbyder (vigtige eksterne tabel Vendors)
commodity_name Produktnavn
commodity_price koste
commodity_desc Beskrivelse

oprette tabellen:

--CREATE TABLE Commodity

(commodity_id CHAR (15) NOT NULL,

vendor_id CHAR (15) NOT NULL,

commodity_name CHAR (254) NULL,

commodity_price DECIMAL (8,2) NULL,

commodity_desc VARCHAR (1000) NULL);

tabel består af fem kolonner.Efter navnet er den type data kolonner adskilt af kommaer.Værdien af ​​søjlen kan acceptere null værdier (NULL), eller skal udfyldes (NOT NULL), og det er fast besluttet på at oprette tabellen.

data prøve fra bordet

operatør data sampling - de mest anvendte SQL-sætninger.For oplysninger, du har brug for at angive, at vi ønsker at vælge fra en tabel.Først et simpelt eksempel: at

SELECT commodity_name FRA Commodity

Efter SELECT-sætning angive navnet på den kolonne for at få oplysninger, og bestemmer FROM tabel.

Resultatet af søgningen bliver alle rækker med værdier Commodity_name i den rækkefølge, de er opført i databasen, der eruden nogen sortering.At organisere resultaterne ved hjælp af en ekstra operatør ORDER BY.

At forespørge på flere felter liste dem adskilt af kommaer, som i det følgende eksempel:

SELECT commodity_id, commodity_name, commodity_price FRA Commodity

er muligt at opnå som følge af anmodningen af ​​alle de kolonner linje.Til dette formål, tegnet «*»:

SELECT * FROM Commodity

  • Derudover SELECT understøtninger:
  • sortere data (operatør ORDER BY)
  • Valg i henhold til de betingelser (hvor)
  • gruppering sigt (GROUP BY)

tilføje rækker

For at tilføje rækker til en tabel ved hjælp SQL-sætninger med operatøren INSERT.Tilsætningen kan gøres på tre måder:

  • tilføje en ny hel linje;
  • af linjen;
  • forespørgsel resultater.

at tilføje komplet linje skal angive navnet på bordet og værdierne af kolonner (felter) i den nye linje.Her er et eksempel:

INSERT INTO Commodity VALUES ('106', '50', 'Coca-Cola', '1,68', 'Nej Alcogol,)

eksempel tilføjer en tabel med nye varer.Værdierne er angivet efter VÆRDIER opgørelse for hver kolonne.Hvis der ikke er nogen tilsvarende værdi for en kolonne, skal du angive NULL.Kolonnerne er fyldt med værdierne i den angivne rækkefølge, når du opretter en tabel.

Hvis du tilføjer kun en del af den linje, skal du eksplicit angive navnet på den kolonne, som i eksemplet:

INSERT INTO Commodity (commodity_id, vendor_id, commodity_name)

VÆRDIER ('106', '50'"Coca-Cola",)

Vi har indført kun produktidentifikatorer, leverandør og dens navn, og lægge resten af ​​feltet stå tomt.

Tilføjelse forespørgsel resultater

hovedsageligt INSERT bruges til at tilføje strenge, men kan bruges til at tilføje resultaterne af operatøren SELECT.

Ændring af data

For at ændre oplysningerne i felterne i databasen tabel, du ønsker at bruge operatørens UPDATE.Operatøren kan bruges på to måder:

  • opdaterer alle rækker i tabellen.
  • kun en vis linje.

UPDATE består af tre hovedelementer:

  • tabel, hvor du ønsker at foretage ændringer;
  • feltnavne og deres nye værdier;
  • betingelser for at vælge rækker til at ændre.

Overvej et eksempel.Antag varer med ID = 106 har ændret prisen, så denne linje for at opdatere.Vi skriver følgende erklæring:

UPDATE Commodity SET commodity_price = '3.2' WHERE commodity_id = '106'

Vi angive tabelnavnet, i vores tilfælde, Commodity, som vil blive opdateret, og derefter efter SET - den nye værdi af kolonnen og finde den ønskede postved at angive den ønskede værdi i WHERE id.

For at ændre antallet af kolonner efter SET angivet et par par af kolonnen værdi, adskilt af kommaer.Se et eksempel, hvor opdateret navn og pris for varerne:

UPDATE Commodity SET commodity_name = 'Fanta «, commodity_price =' 3.2 'WHERE commodity_id =' 106 '

at slette oplysningerne i kolonnen, kan du indstille den til NULL, hvisDen tillader strukturen af ​​tabellen.Husk, at NULL - dette er "nej" værdi, ikke nul som tekst eller tal.Slet produktbeskrivelsen:

UPDATE Commodity SET commodity_desc = NULL HVOR commodity_id = '106'

Sletning rækker

SQL-forespørgsler til at slette rækker i tabellen udføres af operatøren SLET.Der er to måder at bruge:

  • tabel slettet visse linjer;
  • sletter alle rækker i tabellen.

Eksempel på sletning af en række fra tabellen:

DELETE FROM Commodity WHERE commodity_id = '106'

Efter DELETE FROM angive navnet på bordet, hvor rækkerne vil blive slettet.WHERE indeholder en betingelse, som vil blive udvalgt linjen til sletning.I eksemplet fjerner vi posten med ID = 106.Angive, hvor meget vigtigt, fordiprivedt videregive denne erklæring for at slette alle rækker i en tabel.Dette gælder for at ændre feltværdier.

DELETE-sætningen angiver ikke kolonnenavne, og meta-tegn.Det helt fjerner række og kolonne for at slette en person, han ikke kan.

hjælp af SQL i Microsoft Access

Microsoft Access er normalt bruges interaktivt til at oprette et regneark, database, ledelsesændringer, analyse af data i databasen og for at gennemføre forespørgsler SQL Adgang via en bekvem interaktiv forespørgsel bygherre (Query Designer), ved hjælp af, som du kan bygge og straks udføre SQL-sætninger af enhver kompleksitet.

også støttet ordning for adgang til serveren, hvor Access-database kan bruges som en generator af SQL-forespørgsler til at eventuelle ODBC datakilder.Denne funktion gør det muligt for Access-applikationer interagerer med databaser af enhver størrelse.

Extensions SQL

Fordi SQL-forespørgsler ikke har alle funktionerne i proceduremæssige programmeringssprog, såsom loops, forgrening, etc., er producenterne at udvikle en database version af SQL forbedret.Den første er støtte til lagrede procedurer og standard operatører proceduremæssige sprog.

mest almindelige dialekter:

  • Oracle Database - PL / SQL
  • Interbase, Firebird - psql
  • Microsoft SQL Server - Transact-SQL
  • PostgreSQL - PL / pgsql.

SQL Internet

MySQL-database er udgivet under en fri licens GNU General Public License.Der er en kommerciel licens med evnen til at udvikle brugerdefinerede moduler.Som en del af de mest populære del af build internetservere såsom XAMPP, WAMP og LAMP, og er den mest populære database applikationsudvikling på internettet.

blev udviklet af Sun Microsystems, og er i øjeblikket understøttes af Oracle.Understøtter database størrelse op til 64 terabyte, standard SQL: 2003 syntaks, database replikering og cloud-tjenester.