RekenaarsProgrammering

SQL-navrae opdrag

SQL - een van die mees algemene programmeertale te skep en te bestuur die databasis, sowel as vir 'n verskeidenheid van aksies met die data self.

As die praktyk toon, is dit baie maklik om te gebruik en maak die meeste van die standaard woordeskat van die Engelse taal. Soos enige ander programmeertaal, die SQL het sy eie logika en sintaksis, 'n stel van basiese bevele en reëls vir die gebruik daarvan.

Klassifikasie van SQL opdragte

Alle standaard SQL opdragte kan oorweeg word op grond van hul bestemming. As die basis vir klassifikasie vneglasnoy kan sulke stelle neem as:

  1. om bevele te bevraagteken.

  2. Spanne ingeboude prosedures en funksies.

  3. snellers en stelsel tafels beveel.

  4. Stelle van kombinasies om te werk met die datum en stringveranderlikes.

  5. Beveel vir die werk met data en tabelle.

Hierdie klassifikasie is eindeloos, maar die basiese SQL taal opdrag stelle gebou juis as gevolg van hierdie tipe.

Met inagneming van die klassifikasie van die taal, nie te praat van wat dit is universeel, soos blyk uit die omvang van die gebruik daarvan. Dit programmeertaal en sy variante benut nie net in standaard omgewing, maar ook in ander programme, wat een of ander manier, het jy gebruik.

Die omvang van die gebruik van SQL kan besigtig word vanuit die perspektief van kantoor sagteware, naamlik MicrosoftAccess. Hierdie taal, of liewer, sy spesie - MySQL, kan jy die Internet databasis administreer. Selfs Oracle ontwikkeling omgewing wat gebaseer is op die gebruik daarvan in SQL opdragte van navrae.

Die gebruik van SQL in MicrosoftAccess

Een van die mees algemene gebruik taal vir databasis programmering sagteware pakket word beskou as MicrosoftOffice. Die studie van hierdie sagteware bied 'n skool loop van rekenaarwetenskap, en in die elfde graad word beskou as 'n databasis management system MicrosoftAccess.

Dit is die studie van die aansoek die studente vertroud te raak met die taal ontwikkeling van databasisse en kry 'n basiese begrip van al dit ingesluit. SQL Toegang span eerder primitief, natuurlik, as ons hulle oorweeg in 'n professionele wyse. Hardloop so opdragte is baie eenvoudig, en hulle is aangepas in die kode redakteur.

Dink aan 'n spesifieke voorbeeld:

SELECT Pe_SurName

UIT PHERSON

WAAR Pe_Name = 'Maria';

Gebaseer op die opdrag sintaksis, kan jy verstaan dat dit gee die gebruiker naam van die persoon, in hierdie geval, 'n vrou met die naam Maria, wat gestoor word in die kontakte databasis.

Hoewel die gebruik van SQL in Access is beperk, soms so 'n eenvoudige navrae kan grootliks vereenvoudig die implementering van die toegewysde take.

Die gebruik van SQL-stellings in Oracle

Oracle - dit is waarskynlik die enigste Microsoft SQL Server 'n ernstige mededinger. Dit is hierdie ontwikkeling omgewing en die bestuur van die databasis is voortdurend lei tot die verbetering van die sagteware maatskappy Microsoft produk eienskappe as die kompetisie - is die enjin van vooruitgang. Ten spyte van die konstante wedywering, SQL Oracle span herhaal SQL. Dit sal opgemerk word dat hoewel Oracle en word beskou as byna 'n volledige kopie van die SQL, die logika van hierdie stelsel, en die taal is oor die algemeen makliker beskou.

Oracle-stelsel met behulp van 'n spesifieke stel van opdragte is nie so 'n ingewikkelde struktuur. As ons kyk na die data vermoëns van databasis ontwikkeling omgewings, nie Oracle nie die komplekse struktuur van geneste navrae.

Hierdie verskil kan baie keer om die bespoediging van die werk met die data, maar, in teenstelling, lei tot ondoeltreffende gebruik van geheue, in 'n paar individuele gevalle. Oracle struktuur grootliks gebou op tydelike tafels en die gebruik daarvan. As 'n voorbeeld: SQL opdragte in die stelsel is gebaseer op die analogie met die SQL taal self standaarde, hoewel nie beduidend verskil van dit.

SELECTCONCAT (CONCAT (CONCAT ( "werknemer", sname), CONCAT (SUBSTR (fname, 0, 1), SUBSTR (otch, 0, 1))), CONCAT ( 'prinyatnarabotu, acceptdate)) VAN werknemers WAAR acceptdate> TO_DATE ('01 .01.80 ',' dd.mm.jjjj);

Hierdie navraag sal data terug oor werknemers, wat in diens vir 'n sekere tydperk van die tyd. Hoewel die navraag struktuur verskil van Microsoft SQL Server, die uitvoering van SQL opdragte in hierdie stelsels is soortgelyk, behalwe vir die minder belangrike besonderhede.

Die gebruik van SQL op die Internet

Met die koms van die World Wide Web, dit wil sê die Internet, is die SQL taal uit te brei die omvang van gebruik. Soos bekend is, is die netwerk gestoor baie inligting, maar dit is nie chaotiese en gepos word op die webtuistes en bedieners volgens sekere kriteria.

Vir die berging van inligting op die internet, sowel as in ander plekke, is verantwoordelik direk na die databasis, en die plekke is beheerstelsels. Tipies, webwerwe en kode georganiseer in verskillende programmeertale, maar die databasis is gebaseer op 'n tipe van die SQL, en dit is die taal van databasis skepping, gerig op die MySQL web koppelvlakke.

Die sintaksis en die basiese stel instruksies wat taal al die bekende SQL heeltemal kopieer, met 'n paar van sy toevoegings, wat hom gee in teenstelling met Microsoft TSQL Server.

SQL opdragte heeltemal soortgelyk nie net sintaksis, maar ook 'n standaard stel funksie woorde. Die enigste verskil is in die oproep versoek en strukturering. Byvoorbeeld, oorweeg 'n versoek om 'n nuwe tabel te skep, sy is die eerste wat hulle kinders leer in skole op die rekenaar:

$ Link = mysqli_connect ( 'localhost', "wortel", " ',' tester");

indien (! $ skakel) sterf ( "Fout");

$ Query = 'skep tafel gebruikers (

aanteken VARCHAR (20)

wagwoord VARCHAR (20)

');

indien (mysqli_query ($ skakel, $ navraag)) eggo "Table geskep.";

elseecho "Die tafel is nie geskep:" .mysqli_error ();

mysqli_close ($ skakel);

gebruikersnaam en wagwoord: as gevolg van so 'n versoek, kan jy 'n nuwe tabel "gebruikers", waarin daar twee velde te kry.

Sintaksis verander onder die Web, maar is gebaseer op MicrosoftSQLServer span.

Gebou Navrae MicrosoftSQLServer

Die monster van 'n spesifieke stel van data tafels is een van die belangrikste take van SQL. Vir sulke operasies, op voorwaarde dat die kies opdrag in SQL. Dit is oor dit wat hieronder bespreek word.

Terme van spanbou is baie eenvoudig, en baie kies opdrag in SQL word soos volg saamgestel. Byvoorbeeld, daar is 'n tabel op waarin die data is beskikbaar vir werknemers wat, byvoorbeeld, n persoon se naam. Ons stel die probleem wat die tafel wat jy nodig het om data oor werknemers, wat geboortedatum kies - in die interval vanaf die eerste van Januarie tot die eerste van Maart van die huidige jaar, ingesluit. Vir so 'n monster is wat nodig is om 'n SQL opdrag, wat nie net 'n standaard ontwerp, maar ook die keuse toestand uit te voer:

Kies * van persoon

Waar P_BerthDay> = '01 / 01/2016 'en P_BerthDay <= '03 / 01/2016'

Uitvoering van hierdie opdrag sal al die data terug oor werknemers, wie se verjaarsdag is in die tydperk, wat deur jou gestel het. Soms moet jy kan uitgedaag word om net die laaste naam, eerste naam en patronymicum van die werknemer te vertoon. Vir hierdie doel, 'n versoek om 'n effens ander manier te bou, byvoorbeeld, soos volg:

SelectP_Name - naam

P_SurName - Van

P_Patronimic - patronymicum

van persoon

Waar P_BerthDay> = '01 / 01/2016 'en P_BerthDay <= '03 / 01/2016'

Dit is egter net 'n seleksie van enigiets. Hy is in wese niks raak nie, maar bied slegs inligting. Maar as jy besluit om ernstig op te neem die SQL taal, sal jy het om te leer hoe om veranderinge aan die databasis te maak, aangesien hul konstruksie sonder dit is eenvoudig onmoontlik. Hoe dit gedoen word dit sal hieronder bespreek word.

Basiese SQL opdragte om data te verander

Die sintaksis gebou nie net vir bevraagteken nie, maar ook vir data manipulering. Basies, is die taak databasis programmeerder skryf van die draaiboek vir die monsters en verslae, maar soms moet jy veranderinge aan die tafel te maak. SQL opdragte lys vir sulke optrede is klein en bestaan uit drie hoof spanne:

  1. Voeg (trans. Voeg).

  2. Update (trans. Update).

  3. Verwyder (trans. Verwyder).

Die doel van hierdie spanne is maklik om te bepaal, is dit genoeg om net te vertaal hul naam. Hierdie opdragte is maklik om te gebruik en het nie 'n ingewikkelde konstruksie van die skema, maar dit is die moeite werd om te noem dat sommige van hulle, as onbehoorlik gebruik, kan onherstelbare skade aan die databasis.

As 'n reël, voordat die gebruik van hierdie opdragte MSSQL wat jy nodig het om te oorweeg en in ag neem al die moontlike gevolge van die implementering daarvan.

Nadat die leer hierdie gebooie, sal jy in staat wees om ten volle te begin werk met databasis tabelle, daardeur verander dit en maak 'n paar nuwe verklarende veranderlikes op of verwyder ou.

span insetsel

Om data in te voeg in 'n tafel met behulp van die veiligste span - Insert. Verkeerdelik ingevoeg data is altyd moontlik om te verwyder en voeg by die databasis weer.

Voeg opdrag om nuwe data in te voeg in die tabel en stel jou in staat om by te voeg as 'n volledige stel, en selektief.

Byvoorbeeld, oorweeg die inbring van 'n bevel in die voorheen beskryf tafel Persoon. Met die oog op die SQL opdrag maak moet hardloop in die datatabel, wat dit moontlik maak om al die data in te voeg in 'n tabel of vul dit selektief.

Voeg in persoon

Kies 'Grigoriev' 'Vitali', 'Petrowitsj "," 1988/01/01 "

MS SQL Server opdrag so 'n plan is outomaties gevul met al die selle van die tafel met die gespesifiseerde data. Daar is situasies waar die werknemer het geen middel aanvanklike, byvoorbeeld, het hy aan die werk op die uitruil van Duitsland. In hierdie geval, hardloop die volgende opdrag insetsels data, wat sal bring aan die tafel net wat nodig is. Die sintaksis van hierdie opdrag is soos volg:

Insertintoperson (P_Name, P_SurName, P_BerthDay)

Waardes ( 'Dawid,' Hook "," 1986/02/11 ")

Hierdie span vul net die gespesifiseerde sel, en al die ander sal nul wees.

Opdrag om die data te verander

Om die data as 'n geheel lyn te verander, en 'n paar selle gebruik Update SQL opdrag. Doen hierdie opdrag moet net aan sekere voorwaardes, naamlik presies aan te dui in watter lyn van die aantal wat nodig is om veranderinge aan te bring.

Update SQL opdrag het 'n eenvoudige sintaksis. Om die korrekte gebruik te verseker, jy spesifiseer watter data in 'n kolom en 'n rekord moet verander. Volgende, skep 'n script en uit te voer nie. Oorweeg 'n voorbeeld. Ons moet die geboortedatum van Dawid Hook, wat ingesluit is in die werknemer tafel by nommer 5 te verander.

werk Persoon

Stel P_BerthDay = '02 / 10/1986 'waar P_Id = 5

Toestand (in die script) sal die datum van geboorte van al tafel rekords nie verander nie, en werk net die nodige.

Dit is hierdie span van programmeerders gebruik meestal, want dit laat jou toe om die data in die tabel verander sonder dat beduidende skade aan die hele inligting.

Beveel om ingeboude prosedures en funksies te gebruik

Met die hulp van die taal SQL, kan jy nie net bou navrae, maar ook om 'n ingeboude meganismes te skep vir die werk met data. As 'n reël, daar is tye wanneer jy wil gebruik in die liggaam van die navraag monster vroeër geskryf.

Te oordeel logies, dan moet jy kopieer en plak die monster teks in die regte plek, maar jy kan 'n eenvoudige oplossing nie. Oorweeg 'n voorbeeld waar die werk koppelvlak vertoon knoppie om die verslag te druk, byvoorbeeld in Excel. Hierdie operasie sal uitgevoer word as wat nodig is. Vir sodanige doeleindes, is 'n ingeboude in stored procedures. Instruksies SQL navrae, in hierdie geval, is in die proses en word veroorsaak deur 'n SQLExec span.

Kom ons veronderstel dat die proses vir die onttrekking geboortedatums van werknemers met die voorheen beskryf Persoon tafel is gemaak. In hierdie geval, daar is geen rede om die hele navraag te skryf. Om die nodige inligting te bekom voldoende is om die opdrag Exec [prosedure naam] te voer en te slaag die nodige parameters vir monsterneming. As 'n voorbeeld kan ons die meganisme vir die skepping van so 'n aard van die prosedure te oorweeg:

CREATEPROCEDUREPrintPerson

@DB smalldatetime

@DE smalldatetime

AS

STEL NOCOUNT OP;

SELECT * van persoon

UIT HumanResources.vEmployeeDepartmentHistory

WAAR P_BerthDay> = @DB en P_BerthDay <= @DE

ANDEndDateISNULL;

GO

Hierdie proses terug al die inligting oor werknemers wie se verjaarsdag sal wees in 'n gegewe tydperk.

Organisasie data integriteit. snellers

Sommige MS SQL-instruksies, mens kan selfs sê, die ontwerp kan nie net organiseer data manipulering, maar ook om hul integriteit te verseker. Vir sodanige doeleindes in die taal wat ontwerp stelsel ontwerp, wat 'n programmeerder self skep. Dit is bekend as snellers, wat data beheer kan voorsien.

In hierdie geval, vir die organisasie van toetsomstandighede met behulp van standaard SQL-navrae opdrag. In snellers, kan jy 'n baie voorwaardes en beperkings vir data wat nie net toegang tot inligting sal beheer nie, maar ook om die verwydering, verandering verbied, of voeg data te skep.

Die tipes SQL opdragte wat gebruik kan word in 'n sneller, nie beperk. Kyk na die volgende voorbeeld.

As ons die meganisme vir die skep van die sneller te beskryf, dan is die tipe SQL opdragte is dieselfde as wanneer die skep van 'n proses. algoritme self sal onder beskryf word.

Die eerste stap is om die diens opdrag om snellers te skep beskryf:

SKEP TRIGGER Person_Insert

Volgende punt om 'n tafel:

ONPerson

Dui waarvoor data bedrywighede (in hierdie geval, die data verander operasie).

Die volgende stap is om die tafels en veranderlikes spesifiseer:

verklaar @ID int. @date smalldatetime @nID int. @nDatesmalldatetime

Verklaar verder cursors om data tafels verwydering en vervanging van data Kies:

Verklaar wyser C1 vir uitgesoekte P_Id, P_BerthDay uit ingevoeg

Verklaar wyser C2 vir uitgesoekte P_Id, P_BerthDay van geskrap

Definisie van die data seleksie stappe. Sodra in die liggaam cursors voorskryf toestand en reaksie daarop:

As @ID = @nID en @nDate = '01 / 01/2016 '

begin

sMasseges 'Run operasie onmoontlik. Datum is nie geskik "

einde

Dit is noemenswaardig dat die sneller nie net kan skep nie, maar ook afskakel vir 'n rukkie. Soos manipulasie kan net 'n programmeerder die uitvoering van SQL Server opdrag hou:

altertablePERSONdisabletriggerall - al snellers geskep vir die tafel te skakel, en daarvolgens, altertablePERSONenabletriggerall - vir insluiting.

Hierdie basiese SQL instruksies mees algemeen gebruik word, maar hul kombinasie kan baie uiteenlopend wees. SQL - 'n baie buigsame programmeertaal en gee die ontwikkelaar 'n maksimum van moontlikhede.

gevolgtrekking

Uit bogenoemde kan ons net aflei: SQL taalvaardigheid 'n moet vir diegene wat wil om ernstig te betrek in programmering. Dit lê aan die hart van alle operasies uitgevoer in die Internet en in die huis databasis. Dit is waarom die toekoms programmeerder die aantal bevele van die taal moet ken, want net hulle kan wees, om so te praat, te kommunikeer met die rekenaar.

Natuurlik, daar is tekortkominge, soos in alles in hierdie wêreld nie, maar hulle is so klein dat net bleek voor die meriete. Onder al die SQL programmeertaal is byna die enigste een van sy soort, want dit is universeel, en kennis oor die skryf van draaiboeke en kodes is die basis van feitlik alle terreine.

Die grootste voordeel van SQL bezogovorchno kan beskou word as sy eenvoud, want na alles, dit was hy wat in die skool kurrikulum ingestel. Aangesien dit selfs 'n beginner programmeerder kan hanteer, nie regtig vertroud met tale.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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