/ / SQL naredbe upita

SQL naredbe upita

SQL je jedan od najčešćih programskih jezika za izradu i upravljanje bazom podataka, kao i za obavljanje različitih aktivnosti s podacima.

sql naredbi

Kao što praksa pokazuje, vrlo je jednostavnaovladavanje i maksimiziranje standardnog rječnika engleskog jezika. Kao i svaki drugi programski jezik, SQL ima svoju logiku i sintaksu, skup osnovnih naredbi i pravila za njihovo korištenje.

Razvrstavanje naredbi SQL jezika

Sve standardne SQL naredbe mogu se razmotriti na temelju njihove svrhe. Kao osnova za neslužbenu klasifikaciju, može se uzeti takvi setovi kao:

  1. Naredbe za postavljanje upita.

  2. Naredbe za ugrađene procedure i funkcije.

  3. Trigger i naredbe tablice sustava.

  4. Skupine kombinacija za rad s datumom i nizom varijabli.

  5. Naredbe za rad s podacima i tablicama.

Ova se klasifikacija može nastaviti na neodređeno vrijeme, ali osnovni skupovi naredbi SQL jezika bit će izgrađeni na temelju tih vrsta.

sql naredbi upita

S obzirom na klasifikaciju jezika,napomenuti da je univerzalna, kao što je naznačeno opsegom njegove uporabe. Ovaj programski jezik i njegove varijante koriste se ne samo u standardnom okruženju, već iu drugim programima koji ste na ovaj ili onaj način koristili.

Opseg korištenja SQL-a može se pregledati stočke gledišta uredskog softvera, odnosno Microsoft Access. Ovaj jezik, inače njegova verzija - MySQL, omogućuje administriranje baza podataka na Internetu. Čak i Oracle razvojno okruženje koristi SQL naredbe kao svoju osnovu.

Korištenje SQL u Microsoft Accessu

Jedan od najjednostavnijih primjera korištenjajezik za programiranje baza podataka je MicrosoftOffice softverski paket. Proučavanje ovog softverskog proizvoda pruža školski tečaj informatike, au jedanaestoj klasi razmatra se sustav upravljanja MicrosoftAccess bazom podataka.

To je pri učenju ove studenteupoznati se s jezikom razvoja baze podataka i dobiti osnovno razumijevanje svega u njemu. Pristup SQL naredbi prilično je primitivan, naravno, ako se gleda na profesionalnoj razini. Izvršenje takvih naredbi je vrlo jednostavno, a izrađuju se u prilagođenom uredniku koda.

Razmislite o određenom primjeru:

SELECT Pe_SurName

Od Pherson

WHERE Pe_Name = "Mary";

Na osnovu sintakse naredbe može se shvatiti da će korisniku vratiti ime osobe, u ovom slučaju, ženu nazvanu Mary, koja je pohranjena u tablici baze podataka Kontakti.

Iako je uporaba SQL u Accessu ograničena, ponekad takvi jednostavni upiti mogu uvelike pojednostaviti izvršavanje zadatka.

Upotreba SQL naredbi u Oracleu

Oracle je vjerojatno jedini ozbiljansuparnik Microsoft SQL Server. To okruženje za upravljanje razvojem i bazom podataka koje stalno vodi do poboljšanja funkcija Microsoftovog softverskog proizvoda, budući da je konkurencija motor napretka. Usprkos stalnom suparništvu, Oracleove SQL naredbe ponavljaju SQL. Važno je napomenuti da iako se Oracle smatra gotovo kompletnom kopijom SQL, logika ovog sustava i jezika u cjelini smatra se jednostavnijim.

odaberite naredbu u sql

Oracle sustav prilikom korištenja određenihnaredbeni set nema takvu složenu strukturu. Ako razmotrimo mogućnosti ovih okruženja za razvoj baze podataka, Oracle nema složenu strukturu ugniježđenih upita.

Ova razlika omogućuje nam ubrzavanje mnogo putaradeći s podacima, ali, nasuprot tome, dovodi do iracionalne uporabe memorije, u nekim pojedinačnim slučajevima. Struktura Oracle uglavnom je izgrađena na privremenim stolovima i njihovoj uporabi. Kao primjer: SQL naredbe u ovom sustavu izgrađene su analogno standardima samog SQL jezika, iako se malo razlikuju od toga.

SELECTCONCAT (CONCAT (CONCAT ('Employee', sname),CONCAT ("prihvaćen", acceptdate) od zaposlenika gdje prihvaćaju datum> to_date ('01 .01.80 ',' dd.mm.yyyy );

Ovaj upit će vratiti podatke zaposlenikakoji su unajmljeni za određeno vrijeme. Iako se struktura upita razlikuje od Microsoft SQL Server, izvršavanje SQL naredbi na tim sustavima je slično, osim malih detalja.

Korištenje SQL-a na Internetu

S pojavom svjetskog weba, to jestInternet, uporaba SQL jezika se širi. Kao što je poznato, mnogo se informacija pohranjuje u mreži, ali nije slučajno smješteno, već postavljeno na web stranice i poslužitelje prema određenim kriterijima.

Za pohranu podataka na Internetu, kao una drugim mjestima, baze podataka izravno reagiraju, a web stranice su sustavi upravljanja. U pravilu, web stranice i programski kodovi organizirani su na različitim programskim jezicima, ali se baza podataka temelji na jednoj od varijabli SQL, odnosno jezika za stvaranje baze podataka, orijentiranih na MySQL web sučelja.

Sintaksa i glavni naredbeni set ovog jezika u potpunosti kopiraju poznati SQL, ali s nekim njegovim dodatcima, što ga razlikuje od Microsoft tSQL poslužitelja.

SQL naredbe su potpuno slične ne samo nasintaksu, ali i na standardnom skupu službenih riječi. Jedina je razlika u pozivanju i strukturiranju zahtjeva. Na primjer, razmislite o zahtjevu za izradom nove tablice, ona je ona prva stvar koju djeca uče u računalnoj znanosti:

$ link = mysqli_connect ("localhost", "root", "", "tester");

ako (! $ link) umre ("Greška");

$ query = "izradi korisnike tablice (

prijava VARCHAR (20),

lozinka VARCHAR (20)

) ";

ako (mysqli_query ($ link, $ query)) odjekuje "Stvar je izrađen.";

elseecho "Tablica nije stvorena:". mysqli_error ();

mysqli_close ($ link);

Kao rezultat takvog zahtjeva, možete dobiti novu tablicu "Korisnici", u kojima će biti dva polja: prijava i lozinka.

Sintaksa je promijenjena na web, ali se temelji na naredbama MicrosoftSQLServer.

Izgradnja upita MicrosoftSQLServer

Preuzimanja tablica iz određenog skupa podataka jedan je od glavnih zadataka SQL-a. Za takve operacije, odaberite naredba je osigurana u SQL. O njoj će se raspravljati u nastavku.

ažuriraj naredbu sql

Pravila za izgradnju naredbe vrlo su jednostavna iOdabir naredbe u SQL konstruira se na sljedeći način. Na primjer, postoji tablica u kojoj se nalaze podaci o zaposleniku koji, na primjer, ima ime Osoba. Postavili smo zadatak da iz tablice treba odabrati podatke o zaposlenicima čiji je datum rođenja između prvog siječnja i prvog ožujka tekuće godine. Za takav uzorak potrebno je izvršiti SQL naredbu u kojoj neće biti samo standardna konstrukcija već i uvjet odabira:

Odaberite * od Osobe

Gdje je P_BerthDay> = '01 / 01/2016 'i P_BerthDay <= '03 / 01/2016'

Izvršenje takve naredbe vratit će sve podatkezaposlenika čiji je rođendan u razdoblju koje ste odredili. Ponekad postoji zadatak da se prikaže samo prezime, ime i patronimika zaposlenika. Da biste to učinili, upit treba biti izgrađen malo drugačije, na primjer, na sljedeći način:

SelectP_Name - name

P_SurName - prezime

P_Patronimic - srednje ime

od osobe

Gdje je P_BerthDay> = '01 / 01/2016 'i P_BerthDay <= '03 / 01/2016'

sql proročanstvo naredbi

Međutim, ovo je samo izbor nečega. On, u suštini, ne utječe ni na što, već daje samo informacije. Ali ako odlučite ozbiljno shvatiti jezik SQL, morat ćete naučiti kako napraviti izmjene u bazi podataka, budući da je njihova izgradnja jednostavno nemoguća bez njega. Kako se to radi, bit će raspravljano u nastavku.

Osnovne SQL naredbe za promjenu podataka

Sintaksa jezika nije izgrađena samo za izvršenje.upita, ali i za manipulaciju podacima. U osnovi, zadatak programera baze podataka je napisati skripte za uzorke i izvještaje, ali ponekad je potrebno urediti tablice. Popis SQL naredbi za takve radnje je mali i sastoji se od tri glavne naredbe:

  1. Umetni (umetnuti).

  2. Ažuriraj (trans. Update).

  3. Izbriši (trans. Izbrisati).

Svrha ovih naredbi je lako odreditito će biti dovoljno samo prevesti svoje ime. Te su naredbe jednostavne za uporabu i imaju jednostavnu konstrukcijsku shemu, no vrijedno je spomenuti da neki od njih, ako se koriste nepropisno, mogu uzrokovati nepopravljivu štetu baze podataka.

U pravilu, prije korištenja takvih MSSQL naredbi potrebno je razmotriti i uzeti u obzir sve moguće posljedice njihove implementacije.

Nakon što ste naučili te naredbe, možete potpuno početi s radom s tablicama baze podataka, čime ćete ih mijenjati i dodavati neke nove varijable ili brisati stare.

Umetni naredbu

sql pristup naredbi

Da biste umetnuli podatke u tablicu, upotrijebite najsigurniju naredbu umetnite. Neispravno umetnuti podaci mogu se uvijek izbrisati i ponovno unijeti u bazu podataka.

Naredba za umetanje namijenjena je umetanju novih podataka u tablicu i omogućuje dodavanje i kompletnog seta i selektivno.

Na primjer, razmislite o umetanju naredbe u ranijemopisana je tablica osoba. Da biste unijeli podatke u tablicu, morate izvršiti SQL naredbu pomoću koje možete umetnuti sve podatke u tablicu ili ih selektivno ispuniti.

Umetnite u osobi

Odaberite 'Grigoriev', 'Vitalij', 'Petrovich', '01 / 01/1988 '

MS SQL SERVER naredbe takvog plana automatskiispunite sve stanice tablice s navedenim podacima. Postoje situacije kada zaposlenik nema srednje ime, na primjer, on je došao raditi u zamjenu za Njemačku. U tom slučaju, morate izvršiti naredbu za umetanje podataka, koja će staviti u tablicu samo ono što je potrebno. Sintaksa za ovu naredbu je sljedeća:

Insertantoperson (P_Name, P_SurName, P_BerthDay)

Vrijednosti ('David', 'Guk', '02 / 11/1986 ')

Takva naredba ispunit će samo navedene ćelije, a sve ostale će biti nulje.

Naredba za promjenu podataka

popis sql naredbi

Promjena podataka cijelog retka iNeke ćelije koriste naredbu Update SQL. Potrebno je izvršiti takvu naredbu samo uz određeno stanje, naime, točno odrediti u kojoj redak po broju trebate izvršiti promjene.

Ažuriranje SQL naredbe ima jednostavnu sintaksu. Za pravilnu upotrebu morate navesti koje podatke, u kojem stupcu i u kojemu se dokumentu valja mijenjati. Zatim stvorite skriptu i izvršite ga. Razmislite o primjeru. Potrebno je promijeniti datum rođenja David Hooke, koji je naveden u tablici zaposlenika na broju 5.

Update Osoba

Postavite P_BerthDay = '02 / 10/1986 'gdje P_ID = 5

Uvjet (u ovoj skripti) ne dopušta promjenu datuma rođenja u svim zapisima tablice, ali ažurira samo one potrebne.

To je tim koji programeri najčešće koriste, jer vam omogućuje da promijenite podatke u tablici bez nanošenja značajnih šteta na sve informacije.

Naredbe za korištenje ugrađenih postupaka i funkcija

Uz pomoć SQL jezika ne možete graditi samozahtjeve, ali i stvoriti ugrađene mehanizme za rad s podacima. U pravilu, postoje trenuci kada trebate koristiti uzorak koji je ranije napisan u tijelu jednog upita.

Sudeći logično, morate kopirati tekst.uzorkovanje i zalijepite na pravo mjesto, ali možete dobiti jednostavnije rješenje. Razmislite o primjeru kada se gumb za ispis izvješća prikazuje na radnom sučelju, recimo u programu Excel. Ova će se operacija izvršiti po potrebi. Za te svrhe ugrađene su pohranjene procedure. SQL naredbe upita, u ovom slučaju, su zatvorene u postupku i nazvane pomoću naredbe SQLExec.

Pretpostavimo da je stvoren postupaks datumom rođenja zaposlenika iz prethodno opisane tablice osoba. U ovom slučaju, nema potrebe napisati cijeli zahtjev. Da biste dobili potrebne informacije, dovoljno je izvršiti naredbu Exec [procedure name] i prenijeti parametre potrebne za odabir. Kao primjer, razmotrite mehanizam za stvaranje postupka ove prirode:

CREATEPROCEDUREPrintPerson

@DB smalldatetime

@DE smalldatetime

AS

SET NOCOUNT ON;

SELECT * od Osobe

FROM HumanResources.vEmployeeDepartmentHistory

GDJE P_BerthDay> = @DB i P_BerthDay <= @DE

ANDEndDateISNULL;

GO

Ovaj postupak će vratiti sve informacije o zaposlenicima čiji će rođendan biti u određenom vremenskom razdoblju.

Organizacija integriteta podataka. okidači

Čak se može reći i neke naredbe MS SQLkonstrukcije omogućuju ne samo organiziranje manipulacija podacima, već i njihovu cjelovitost. U takve svrhe jezik je namijenjen sistemskim konstruktima koje sam programer stvara. To su tzv. Okidači koji mogu dati kontrolu podataka.

U tom slučaju, organizirati provjeru uvjetakoriste se standardne naredbe SQL upita. U okidačima možete stvoriti mnogo uvjeta i ograničenja za rad s podacima koji će vam pomoći u upravljanju ne samo dostupnim informacijama, nego i zabraniti brisanje, izmjenu ili umetanje podataka.

Vrste SQL naredbi koje se mogu koristiti u okidaču nisu ograničene. Razmislite o primjeru.

Ako opisamo mehanizam za stvaranje okidača, vrste SQL naredbi ovdje su jednake kao kod izrade postupka. Slično će se opisati algoritam.

Prvi korak je opisati naredbu za uslugu za stvaranje okidača:

CREATE TRIGGER Person_Insert

Zatim odredite za koju tablicu:

ONPerson

Mi naznačujemo za koju operaciju s podacima (u našem slučaju, to je rad mijenjanja podataka).

Sljedeći je korak specifikacija tablica i varijabli:

izjavljuje @ID int. @Date smalldatetime @nID int. @nDatesmalldatetime

Nadalje, izričemo pokazivače za odabir podataka iz tablica za brisanje i umetanje podataka:

DEclare kursor C1 za odabrani P_ID, P_BerthDay od umetnutog

DEclare kursor C2 za odabrani P_ID, P_BerthDay iz obrisanih

Postavili smo korake za odabir podataka. Nakon toga, u tijelu pokazivača propisujemo stanje i reakciju na njega:

ako @ID = @ nID i @nDate = "01/01/2016"

početi

sMasseges "Nije moguće izvršiti rad. Datum ne odgovara"

kraj

Vrijedno je spomenuti da okidač ne može samo stvoriti, već i neko vrijeme onemogućiti. Ova manipulacija može provesti samo programer pokretanjem SQL SERVER naredbi:

altertablePERSONdisabletriggerall - onemogućiti sve okidače stvorene za ovu tablicu i, sukladno tome, promjenjivePERSONenabletriggerall - omogućiti ih.

Ove osnovne SQL naredbe se najčešće koriste, ali njihove kombinacije mogu biti vrlo različite. SQL je vrlo fleksibilan programski jezik i daje razvojnim programerima maksimum mogućnosti.

zaključak

Iz gore navedenog možete to učinitijedini zaključak: poznavanje SQL jezika je jednostavno potrebno za one koji će ozbiljno sudjelovati u programiranju. To je temelj svih operacija koje se obavljaju kako na Internetu tako iu bazama podataka doma. Zato budući programer mora nužno poznavati mnoge naredbe ovog jezika, budući da se samo s njihovom pomoći komuniciraju s računalom.

Naravno, postoje nedostatci, kao u svemu o tome.svijet, ali su toliko beznačajni da se jednostavno okreću blijedim pred vrlinama. Među svim programskim jezicima, SQL je gotovo jedna od vrsta, jer je univerzalna, a znanje pisanja skripti i kodeksa zasniva se gotovo na svim stranicama.

Glavna prednost SQL-a može biti bezuvjetnosmatraju ga jednostavnima, jer, napokon, bio je on koji je bio uključen u školski nastavni plan. Čak i novak programer koji zapravo ne razumije jezike može se nositi s time.

Pročitajte više: