RačunalaProgramiranje

Naredba SQL-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.

Kao što pokazuje praksa, vrlo je jednostavno učiti i iskoristiti većinu standardnog rječnika engleskog jezika. Kao i svaki drugi programski jezik, SQL ima svoju logiku i sintakse, 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 privatnu klasifikaciju, može se uzeti kao skupovi kao:

  1. Naredbe za izgradnju upita.

  2. Naredbe za ugrađene postupke i funkcije.

  3. Trigger i naredbe tablice sustava.

  4. Kombinirani setovi 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.

S obzirom na klasifikaciju jezika, ne može se samo spomenuti 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 pogledati iz točke gledišta uredskog softvera, odnosno Microsoft Access. Ovaj jezik, odnosno 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 programu Microsoft Access

Jedan od najjednostavnijih primjera korištenja jezika za programiranje baze podataka je MicrosoftOffice softverski paket. Proučavanje ovog softverskog proizvoda osigurava školski tečaj računalne znanosti, au jedanaestoj klasi razmatra se sustav upravljanja MicrosoftAccess bazom podataka .

Tijekom studija ove aplikacije učenici se upoznaju sa jezikom razvoja baze podataka i dobivaju osnovno razumijevanje svega u njemu. Pristup SQL naredbi prilično je primitivan, naravno, ako ih pogledate profesionalno. Izvođenje takvih naredbi vrlo je jednostavno, a izrađuju se u prilagođenom uređivaču koda.

Razmotrimo konkretan primjer:

SELECT Pe_SurName

Od Pherson

WHERE Pe_Name = 'Mary';

Na temelju sintakse naredbe možete shvatiti da će korisniku vratiti prezime, 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 dodijeljenog zadatka.

Upotreba SQL naredbi u Oracleu

Oracle je vjerojatno jedini ozbiljan konkurent Microsoft SQL Server-a. To je ovo okruženje za razvoj i upravljanje bazom podataka koja stalno vodi do poboljšanja funkcija Microsoftovog softverskog proizvoda, budući da je konkurencija motor napretka. Usprkos stalnom suparništvu, Oracleova naredba SQL ponavlja SQL. Treba napomenuti da, iako se Oracle smatra gotovo kompletnom kopijom SQL, logika ovog sustava i jezika u cjelini smatra se jednostavnijim.

Oracle sustav nema takvu složenu strukturu kada se koristi određeni skup naredbi. Ako uzmemo u obzir mogućnosti tih okruženja za razvoj baze podataka, Oracle nema složenu strukturu ugniježđenih upita.

Ova razlika dozvoljava mnogo puta da ubrza rad s podacima, ali, za razliku od toga, dovodi do neučinkovite 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 beznačajno i različito od nje.

SELECTCONCAT (CONCAT (CONCAT (CONSTANT), CONCAT (SUBSTR (fname, 0, 1), SUBSTR (otch, 0, 1))), CONCAT ('Prihvaćeno, prihvati datum)) FROM Employees WHERE acceptdate> to_date ('01 .01.80 ',' dd.mm.yyyy ');

Ovaj će upit vratiti podatke o zaposlenicima koji se angažiraju za određeno vremensko razdoblje. Iako se struktura zahtjeva razlikuje od Microsoft SQL Server, izvršavanje SQL naredbi u tim sustavima je sličan, osim malih detalja.

Korištenje SQL-a na Internetu

S pojavom World Wide Weba, odnosno Interneta, opseg uporabe SQL jezika se širi. Kao što znate, mreža pohranjuje mnogo informacija, ali nije kaotično locirana, već je objavljena na stranicama i poslužiteljima prema određenim kriterijima.

Pohrana podataka na Internetu, kao i drugdje, izravno je odgovornost baza podataka, a web stranice su sustavi upravljanja. Obično se web lokacije i njihov kod organiziraju na različitim programskim jezicima, ali baza se temelji na jednoj od varijabli SQL, odnosno jezika za stvaranje baze podataka, orijentiranih na MySQL web sučelja.

Sintaksa i osnovni skup naredbi ovog jezika potpuno kopiraju uobičajene SQL, ali s nekim njegovim dopunama, što mu daje razliku od Microsoft tSQL poslužitelja.

SQL naredbe potpuno su slične ne samo u sintaksi nego iu standardnom skupu uslužnih riječi. Razlika je samo u pozivu i strukturiranju zahtjeva. Na primjer, možete razmotriti upit za izradu nove tablice, prvo je da djeca uče u školama na računalnoj znanosti:

$ Link = mysqli_connect ('localhost', 'root', '', 'tester');

Ako (! $ Link) umre ("Greška");

$ Query = 'stvoriti korisnike tablice (

Prijava VARCHAR (20),

Lozinka VARCHAR (20)

) ';

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

Elseecho "Stol nije izrađen:". Mysqli_error ();

Mysqli_close ($ link);

Kao rezultat ovog zahtjeva, možete dobiti novu tablicu "Korisnici", koja će imati dva polja: prijava i lozinka.

Sintaksa se mijenja na web, ali na temelju naredbi MicrosoftSQLServer.

Upiti zgrade za Microsoft SQL Server

Odabir iz tablica određenog skupa podataka jedan je od glavnih SQL zadataka. Za takve operacije, odabrana je naredba u SQL-u. U nastavku će se raspravljati.

Pravila za izgradnju naredbe vrlo su jednostavna, a odabrana naredba u SQL konstruirana je kako slijedi. Na primjer, postoji tablica u kojoj postoje podaci o zaposleniku koji, na primjer, ima ime Osoba. Postavimo zadatak da iz tablice treba odabrati podatke o zaposlenicima čiji je datum rođenja u intervalu od 1. siječnja do 1. ožujka tekuće godine. Za takav uzorak morate izvršiti SQL naredbu koja će ne samo imati standardnu konstrukciju 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 podatke o zaposlenicima čiji je rođendan u razdoblju koje ste odredili. Ponekad zadatak može biti zaključak samo prezimena, imena i patronimike zaposlenika. Da biste to učinili, upit mora biti malo drugačiji, na primjer, na sljedeći način:

Naziv SelectP_Name

P_SurName - prezime

P_Patronimic - patronimic

Od osobe

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

Međutim, ovo je samo izbor nečega. On, u suštini, ne utječe ni na što, već samo daje informacije. Ali ako odlučite shvatiti SQL ozbiljno, morat ćete naučiti kako unijeti izmjene u baze podataka, jer je izgradnja bez nje jednostavno nemoguće. Kako će to biti učinjeno, bit će raspravljano u nastavku.

Osnovne SQL naredbe za promjenu podataka

Sintaksa jezika izgrađena je ne samo za upite, već i za manipuliranje podacima. U osnovi, zadatak programera baze podataka je pisanje skripti 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. Umetanje (trans, umetnuti).

  2. Ažuriranje (trans, ažuriranje).

  3. Brisanje (trans. Uklonite).

Svrha tih naredbi je lako odrediti, jer to će biti dovoljno samo za prevođenje njihova imena. Ove su naredbe jednostavne za korištenje i nemaju složene konstrukcijske sheme, no valja istaknuti da neki od njih, ako ih se nepropisno upotrebljavaju, mogu uzrokovati nepopravljivu štetu baze podataka.

U pravilu, prije uporabe takve MSSQL naredbe treba razmotriti i uzeti u obzir sve moguće posljedice njihove provedbe.

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

Naredba Umetanje

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

Naredba za umetanje koristi se za umetanje novih podataka u tablicu i omogućuje dodavanje i kompletnog seta i selektivno.

Na primjer, razmislite o umetanju naredbe u prethodno opisanoj tablici osoba. Da biste unijeli podatke u tablicu, morate izvršiti SQL naredbu, koja će vam omogućiti da sve podatke stavite u tablicu ili ga popunite selektivno.

Umetnite u osobu

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

Naredbe MS SQL SERVER ovog plana automatski popunjavaju sve stanice u tablici s navedenim podacima. Postoje situacije kada zaposlenik nema srednje ime, na primjer, on je došao raditi iz Njemačke za razmjenu. U tom slučaju, morate izvršiti naredbu za umetanje podataka koja će samo popisati ono što je potrebno u tablici. Sintaksa za ovu naredbu je:

Insertantoperson (P_Name, P_SurName, P_BerthDay)

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

Takva naredba popunit će samo navedene ćelije, a sve ostale će biti null.

Naredba za promjenu podataka

Da biste ažurirali podatke za cijeli redak ili za neke ćelije, upotrijebite naredbu Ažuriraj SQL. Za izvršavanje takve naredbe potrebno je samo uz određeni uvjet, odnosno upravo odrediti u kojoj redak po broju je potrebno napraviti izmjene.

Ažuriranje SQL naredbe ima jednostavnu sintaksu. Za pravilnu upotrebu morate navesti koje podatke, koji stupac i koji unos treba mijenjati. Zatim sastavite skriptu i izvršite ga. Razmotrimo primjer. Potrebno je promijeniti datum rođenja David Hooke, koji je uključen u tablicu zaposlenika pod rednim brojem 5.

Ažuriraj osobu

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

Uvjet (u ovoj skripti) neće dopustiti promjenu datuma rođenja u svim zapisima tablice, ali će ažurirati samo one potrebne.

To je ova naredba koju 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

Koristeći SQL, ne možete samo graditi upite, već i stvoriti ugrađene mehanizme za rad s podacima. U pravilu, postoji vrijeme kada morate upotrijebiti u tijelu jednog upita uzorak koji je ranije pisan.

Ako logično sudite, morate kopirati tekst uzorka i zalijepiti ga na pravo mjesto, ali to možete učiniti jednostavnim rješenjem. Pogledajmo primjer gdje se gumb prikazuje na radnom sučelju za ispis izvješća, recimo u programu Excel. Ova će se operacija izvršiti po potrebi. U takve se svrhe koriste ugrađene pohranjene procedure. Naredbe SQL upit, u ovom slučaju, su postupak i pozivaju se pomoću naredbe SQLExec.

Pretpostavimo da je postupak stvoren za izradu datuma rođenja zaposlenika iz prethodno opisane tablice osoba. U ovom slučaju, nema potrebe za pisanjem cijelog upita. Da biste dobili potrebne informacije, dovoljno je izvršiti naredbu Exec [naziv postupka] i prenijeti potrebne parametre za odabir. Kao primjer, možete razmotriti mehanizam za stvaranje postupka ove prirode:

CREATEPROCEDUREPrintPerson

@DB smalldatetime

@DE smalldatetime

AS

SET NOCOUNT ON;

SELECT * od Osobe

OD HumanResources.vEmployeeDepartmentHistory

WHERE 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

Neke naredbe MS SQL, čak i reći dizajne, omogućuju ne samo organiziranje manipulacije podacima, već i njihovu cjelovitost. U takve svrhe, jezik je dizajniran sustav dizajn, koji stvara programer. To su tzv. Okidači koji mogu pružiti kontrolu podataka.

U tom se slučaju standardne naredbe SQL upita koriste za organiziranje provjere stanja. U okidačima možete stvoriti mnoge uvjete i ograničenja za rad s podacima koji će vam pomoći u upravljanju ne samo pristupom informacijama, ali i sprečavanju brisanja, izmjene ili umetanja podataka.

Vrste SQL naredbi koje se mogu koristiti u okidaču su neograničene. Razmotrite primjer.

Ako opišete mehanizam za stvaranje okidača, tada su vrste SQL naredbi jednake kao kod izrade postupka. Slijed algoritma bit će opisan.

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

IZRADITE TRIGGER Person_Insert

Zatim odredite za koju tablicu:

ONPerson

Navedite za koju operaciju s podacima (u našem slučaju ovo je postupak izmjene podataka).

Sljedeći je korak specifikacija tablica i varijabli:

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

Zatim, izričemo pokazivače za odabir podataka iz tablica brisanja i umetanja podataka:

DEclare kursor C1 za odabrani P_ID, P_BerthDay od umetnutog

DEclare kursor C2 za odabrani P_ID, P_BerthDay iz obrisanih

Definirajte 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

Smeće "Postupak se ne može izvesti. Datum ne odgovara '

kraj

Važno je napomenuti da okidač ne može biti samo stvoren, već i onemogućen neko vrijeme. Ova manipulacija može izvršiti samo programer izvršavanjem SQL SERVER naredbi:

AltertablePERSONdabletriggerall - 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 maksimalne mogućnosti.

zaključak

Iz svega navedenog možete izvući jedan zaključak: poznavanje SQL jezika jednostavno je potrebno za one koji će se ozbiljno uključiti u programiranje. Leži u srcu svih operacija koje se izvode na Internetu i u bazama podataka doma. Zato budući programer mora znati puno naredbi ovog jezika, jer samo s njihovom pomoći možete, tako da kažete, komunicirati s računalom.

Naravno, postoje nedostaci, kao u svemu na ovom svijetu, ali su toliko beznačajni da se samo izbjegavaju ispred zasluga. Među svim programskim jezicima, SQL je gotovo jedini takve vrste, jer je univerzalna, a poznavanje pisanja skripti i kodova u srcu je gotovo svih stranica.

Glavna prednost SQL bezogovorchno može se smatrati njegova jednostavnost, jer je, nakon svega, on je bio taj koji je uveo u školski program. Budući da se može nositi čak i početnik programer, a ne stvarno upućen u jezicima.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 hr.birmiss.com. Theme powered by WordPress.