KompjûtersProgramming

SQL-queries kommando

SQL is ien fan 'e meast foarkommende programmearrings foar it oanmeitsjen en behearen fan in database, en ek foar it útfieren fan in ferskaat oan aksjes mei de gegevens sels.

As praktyk lit sjen, is it gewoan ienfâldich om te learen en te meitsjen it measte fan 'e standaard wurdskat fan' e Ingelske taal. Lykas in oare programmearjende taal, SQL hat in eigen logika en syntaks, in set fan basike kommando's en regels om te brûken.

Klassifikaasje fan SQL-taalbehearders

Alle standert SQL-kommando's kinne basearre wurde op basis fan har doel. As basis foar partikuliere klassifikaasje kin men soksoarte as:

  1. Kommando's foar bouwen fan fragen.

  2. Kommando's foar ynboude yndruk en funksjes.

  3. Trigger- en systeemtabelkommando's.

  4. Kombinationen foar wurkjen mei datum en string-fariabelen.

  5. Kommando's foar wurkje mei gegevens en tabellen.

Dizze klassifikaasje kin fuortset ûnbeskat wurde, mar de basalen sets fan it kommando SQL wurde basearre op basis fan dizze soarten.

Op grûn fan de klassifikaasje fan 'e taal kin men net helpe, mar dat is universele, sa as oanjûn troch it gebiet fan har gebrûk. Dizze programmingtaal en har farianten wurde net allinich brûkt yn 'e standert omjouwing, mar ek yn oare programma's dy't ien of oare manier brûkt hawwe.

De gebruik fan gebrûk fan SQL kin besjoen wurde fan it punt fan besjen fan buroblofsoftware, nammentlik Microsoft Access. Dizze taal, of leaver, syn ferzje - MySQL, lit jo databases op it ynternet beheare. Sels de Oracle-ûntwikkeling omjouwing brûkt de SQL-kommando's as har basis.

SQL yn Microsoft Access brûke

Ien fan 'e simpelste foarbylden fan it brûken fan de taal foar programmearring fan databank is it softwarepakket fan MicrosoftOffice. De stúdzje fan dit sêftguod jout in skoalle rin fan de kompjûter wittenskip, en yn 'e alfde klasse wurdt sjoen as in database management systeem MicrosoftAccess.

It is de stúdzje fan it programma 'e studinten e kunde komme mei de taalûntwikkeling fan de databanken en krije in basis begryp fan al it opnaam. SQL-kommando's tagong binne tagelyk primityf, fansels as jo se profilearje. De útfiering fan soksoarte kommando's is ienfâldich, en se binne makke yn in oanpaste modusredeksje.

Lit in konkreet foarbyld beskôgje:

SELECT Pe_SurName

FROM Pherson

Wêr't Pe_Name = 'Mary';

Op grûn fan 'e syntaksis fan' e kommando kinne jo begripe dat it de lêste namme fan de brûker weromkomt, yn dat gefal in frou mei namme Mary, dat opslein is yn 'e tabel fan de Kontaktdatenbank.

Hoewol it gebrûk fan SQL yn Access is beheind, kinne soms sa'n ienfâldige fraachjes de útfiering fan de oanbelangjende taak sterkfâldigje.

SQL-kommando's yn Oracle brûke

Oracle is wierskynlik de iennige serieuze konkurrint foar Microsoft SQL Server. It is dy ûntwikkeling omjouwing en it behear fan de databank is hieltyd liedt ta it ferbetterjen fan 'e software bedriuw Microsoft produkt funksjes as de kompetysje - is de motor fan' e foarútgong. Nettsjinsteande konstante rivaliteit, sille Oracle's SQL-kommando's SQL werhelje. It moat bepaald wurde dat Oracle al beskôge wurdt as in folslein kopie fan SQL, de logika fan dit systeem en de taal as gehiel wurdt beskôge.

It Oracle systeem hat net sa'n komplekse struktuer as it brûken fan in spesifike set fan kommando's. As wy de mooglikheden fan dizze database-ûntwikkeling omjouwingen beskôgje, hat Oracle gjin komplekse struktuer fan nestige queries.

Soks in ferskil kin in protte kearen it wurk mei de gegevens te beschleven meitsje, mar yn tsjinstelling, liedt ta in net-effisjoneel gebrûk fan ûnthâld, yn guon yndividuele gefallen. De struktuer fan Oracle is benammen boud op tydlike tabellen en har gebrûk. As foarbyld: SQL-kommando's yn dit systeem wurde boud troch analogy mei de standerts fan 'e SQL-taal sels, hoewol it net-weardich en oars as fan dy.

SELECTCONCAT (CONCAT (CONCAT (CONSTANT), CONCAT (SUBSTR (fname, 0, 1), SUBSTR (otch, 0, 1))), CONCAT ('akseptearre, acceptdate)) FROM meiwurkers WHERE acceptdate> to_date ('01 .01.80 ',' dd.mm.yyyy ');

Dizze query stjoert gegevens oer meiwurkers dy't betelle wurde foar in bepaalde perioade. Hoewol't de query struktuer is oars as Microsoft SQL-tsjinner, de eksekúsje fan SQL kommando yn dy systemen is ek, útsein by lytse details.

SQL brûke op ynternet

Mei de komst fan it World Wide Web, dat is it ynternet, wurdt it gebiet fan it gebrûk fan 'e SQL-taal útwreide. As jo witte, is it netwurk in protte ynformaasje bewarre, mar it is net chaotysk pleatst, mar op pleatsen en servers neffens guon kritearia.

De opslach fan ynformaasje oer it ynternet, lykas oare plakken, is direkteur de ferantwurdlikens fan databestannen en sitten binne bestjoeringssysteem. Typysk wurde de websides en har koade organisearre yn ferskillende programmearrings, mar de databank is basearre op ien fan 'e ferskillen fan SQL, nammentlik de database kreaasje-taal, rjochte op MySQL web-ynterfaces.

De syntaksis- en basale set fan kommando's fan dizze taal folslein kopiearje de gewoane SQL, mar mei guon fan syn oanfollingen, dy't it in ferskil fan Microsoft tSQL-tsjinner jaan.

SQL-kommando's binne net allinich yn syntaksis, mar ek yn 'e standertset fan tsjinstwurden. It ferskil is allinich yn 'e oprop en struktuer fan it fersyk. Sa kinne jo bygelyks in query beskôgje om in nije tabel te meitsjen, it is it earste dat bern leare op skoallen op kompjûterwittenskip:

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

As (! $ Link) die ("Flater") die;

$ Query = 'Tabel brûkers meitsje (

Ynlogge VARCHAR (20),

Wachtwurd VARCHAR (20)

) ';

As (mysqli_query ($ link, $ query)) echo "De tabel is makke.";

Elseecho "De tafel wie net makke:" .mysqli_error ();

Mysqli_close ($ link);

As gefolch fan dit fersyk kinne jo in nije tabel "brûkers" krije, dy't twa fjilden hat: ynloggen en wachtwurd.

De syntaksis is feroare nei Web, mar basearre op de kommando's MicrosoftSQLServer.

Gebeartetragen foar Microsoft SQL Server

De seleksje fan 'e tafels fan in bepaalde dataset is ien fan' e wichtichste SQL-taken. Foar soksoarte aksjes wurdt it seleksjekommandant yn SQL beskikber steld. It sil hjirûnder besprutsen wurde.

De regels foar it bouwen fan in kommando binne hiel ienfâldich, en it selekteare kommando yn SQL wurdt sa fol makke. Bygelyks is der in tabel wêryn't gegevens oer de meiwurker binne, dy't bygelyks de namme Person hat. Litte wy in taak set dat fan 'e tafel it nedich is om gewoane data te selektearjen oer de meiwurkers dy't dat berte hat is yn it ynterval fan' e earste jannewaris oant de earste maart fan it hjoeddeistige jier ynklusyf. Foar sa'n probleem moatte jo in SQL-kommando útfiere, dat net allinich in standert bou, mar ek in seleksje betingst:

Selektearje * fan persoan

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

De útfiering fan sa'n kommando jout alle gegevens oer de meiwurkers dy't syn jierdei is yn 'e perioade dy't jo ynsteld hawwe. Somtiden kin de opdracht wêze om allinich de lêste namme, foarnamme en patronym fan 'e meiwurker út te lûken. Om dit te dwaan, moat de query oars wat oars oanlein wurde, lykas op dizze manier:

SelectP_Name is de namme

P_SurName - foarnamme

P_Patronimyske - patronymik

Fan Person

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

Dit is gewoan in kar foar wat. Hy, yn essinsje, hat gjin ynfloed op alles, mar leart inkele ynformaasje. Mar as jo beslute om SQL serieus te nimmen, moatte jo leare hoe't jo wizigingen oan databases meitsje moatte, omdat se gebrûk binne sûnder dat it gewoan ûnmooglik is. Hoe't dit dien wurdt sil hjirûnder besprutsen wurde.

Basic SQL-kommando's foar feroaring fan gegevens

De syntaksis fan 'e taal wurdt net allinnich boud foar it útfieren, mar ek foar it manipulearjen fan gegevens. Yn essinsje is de opdracht fan 'e database programmer skripts skript foar samples en rapporten, mar somtiden moatte jo bewurkingen meitsje oan' e tabellen. De list fan SQL-kommando's foar soksoarte aksjes is lyts en bestiet út trije haadkommando's:

  1. Ynfoegje.

  2. Update.

  3. Wiskje.

It doel fan dizze kommando's is maklik te bepalen, dêrfoar sil it genôch wêze om har namme te oersjen. Dizze kommando's binne maklik te brûken en hawwe gjin komplekse bouwurksumheden, mar it is it wurdich te merken dat guon fan harren, as miskien misbrûkt, werjeare opnimbere skea oan de database.

Yn 'e regel, foardat gebrûk fan sokke MSSQL-kommando' s nedich is, en rekkenje alle mooglike gefolgen fan har útfiering.

As jo dizze kommando leard hawwe, dan kinne jo folslein wurkje mei databankeboartes, wêrtroch't it feroaret en in nije nije fariabele ynfierd of âlde wiske is.

It kommando ynfoegje

Om gegevens te brûken yn 'e tabel, brûk it feilichste kommando - ynfoegje. Ungewoane ynfoegje gegevens kinne altyd fuortsmiten wurde en yn 'e database werjûn wurde.

It kommando ynfoegje wurdt brûkt om nije data yn 'e tabel te ynsletten en jo kinne sawol it komplete set en selektearje taheakje.

Sjoch bygelyks it ynfierbehear yn 'e earder beskreaune persoanlike tabel. Om jo gegevens yn de tabel te ynfoljen, moatte jo it SQL-kommando útfiere, sadat jo alle gegevens yn de tabel ynfoegje kinne of selektearje.

Yn persoan ynfoegje

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

De kommando's MS SQL SERVER befetsje fan dit plan automatysk populearje alle sellen yn 'e tabel mei de opjûne data. Der binne situaasjes as in meiwurker gjin middelnamme hat, bygelyks, hy kaam om Dútslân te wurkjen foar in útwikseling. Yn dit gefal moatte jo in befêstiging befetsje útfiere, dat allinich wat opjaan sil wat yn 't tafel nedich is. De syntaksis foar dit kommando is:

Insertintoperson (P_Name, P_SurName, P_BerthDay)

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

Dit kommando falt allinich de spesifike sellen, en alle oaren sille nul wêze.

Kommando foar feroaring fan gegevens

Om de gegevens te feroarjen foar de folsleine rige of foar guon sellen, brûke jo it Update SQL kommando. Om sa'n soart út te fieren is it needsaaklik mar allinich mei in bepaalde betingst, nammentlik krekt om te jaan yn hokker line mei nûmer it nedich is om feroaringen te meitsjen.

It Update SQL kommando hat in ienfâldige syntaksis. Foar korrekt gebrûk moatte jo opjaan oan hokker gegevens, hokker kolom en hokker ynfier feroare wurde moat. Folgje it skript en meitsje it útfiere. Litte wy in foarbyld beskôgje. It is nedich om de datum fan 'e berte fan David Hooke te feroarjen, dy't opnommen is yn' e tafel fan meiwurkers ûnder nûmer 5.

Update Person

Set P_BerthDay = '02 / 10/1986 'wêr P_ID = 5

De kondysje (yn dit skript) sil it feroarjen fan de datum fan 'e berte yn alle recordings fan' e tafel net, mar sil allinich de ferplichte oanmakke.

It is dit kommando dat programmers it meast brûke, om't jo it gegevens yn in tafel wizigje kinne sûnder skea foar alle ynformaasje te feroarjen.

Befegens foar gebrûk fan ynboude prosedueres en funksjes

SQL brûke, kinne jo net allinich gebrûk meitsje fan fragen, mar meitsje ek ynboude ynteresses foar it wurkje mei gegevens. As gewoanwei binne der tiden as jo nedich hawwe moatte yn it lichem fan ien fraach in earder skreaune foarbyld.

As jo logysk wurkje, moatte jo de tekst fan 'e probleem kopiearje en it pleatse, mar jo kinne mei in ienfâldiger oplossing dwaan. Litte wy nei in foarbyld sjen wêr't in knop werjûn wurdt op 'e wurkjende ynterface foar it printsjen fan in rapport, sizze yn Excel. Dizze operaasje sil as nedich dien wurde. Foar sokke doelen wurde de ynboude bewarre prosedueres brûkt. Kommando SQL fragen, yn dit gefal, binne yn it proses en wurde feroarsake troch in SQLExec ploech.

Tink derom dat in proseduere makke is om de datum fan 'e berte fan' e meiwurkers út te jaan út de eardere beskreaune persoanlike tabel. Yn dit gefal is der gjin need nedich om de folsleine query te skriuwen. Om de nedige ynformaasje te krijen, is it genôch om it kommando Exec [proseduere namme] út te fieren en de nedige parameter oer te setten foar de seleksje. As foarbyld kinne jo it meganisme beskôgje foar it meitsjen fan in proseduere fan dizze natuer:

CREATEPROCEDUREPrintPerson

@DB smalldatetime

@DE smalldatetime

AS

SET NOKOUNT ON;

SELEKT * fan persoan

FROM HumanResources.vEmployeeDepartmentHistory

Wêr P_BerthDay> = @DB en P_BerthDay <= @DE

ANDEndDateISNULL;

GO

Dizze proseduere sil alle ynformaasje jaan oer meiwurkers dy't har jierdei yn in bepaalde tiidperioade wêze sil.

Organisaasje fan gegevensintegriteit. Triggers

Guon MS SQL-kommando's, kinne jo sels designen sizze, meie net allinich de data manipulation organisearje, mar ek om har yntegriteit te garandearjen. Foar sokke doelen wurdt de taal ûntwikkele systeem ûntwerp, dy't de programmer makket. Dizze binne saneamde triggers dy't de gegevens kontrôle leverje kinne.

Yn dit gefal wurde standert SQL-querykommando's brûkt om de kondysje kontrôle te organisearjen. Yn triggers kinne jo in soad betingsten en beheiningen oanmeitsje foar it wurkje mei gegevens dy't helpe om net allinich tagong ta ynformaasje te beheinen, mar foarkomme ek foar it fuortheljen, wizigjen of ynsjen fan gegevens.

De types fan SQL-kommando's dy't brûkt wurde yn 'e oandriuwing binne unbegryplik. Besjoch it foarbyld.

As jo de meganisme beskriuwe om in trigger te meitsjen, dan binne de typen fan SQL-kommando's itselde as by it meitsjen fan de proseduere. De algoritme sels sil hjirûnder beskreaun wurde.

De earste stap is om it servicekommando te beskriuwen om triggers te meitsjen:

CREATE TRIGGER Person_Insert

Fierder spesifisearje foar hokker tabel:

ONPerson

Jou oan hokker wurking mei de gegevens (yn ús gefal dit is in gegevensmodifikaasje operaasje).

De folgjende stap is om de tabellen en fariabelen op te jaan:

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

Dêrnei ferklearje wy kursussen om data te selektearjen fan 'e data-deletion- en ynstekstafels:

Cursor C1 útfiere om P_ID, P_BerthDay út te fieren

Cursor C2 útfiere om P_ID, P_BerthDay te selektearjen fan wiske

Define stappen foar it selektearjen fan gegevens. Hjirnei, yn it lichem fan 'e cursors skriuwe wy de kondysje en reaksje op:

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

Begjin

SMasseges 'De operaasje kin net útfierd wurde. Datum net fit '

Einde

It is it wurdich te merken dat de trigger net allinnich makke wurde kin, mar ek foar in skoft beheind. Dizze manipulaasje kin allinich troch de programmer dien wurde troch it útfieren fan de kommando's SQL SERVER:

AltertablePERSONdisabletriggerall - om alle triemmen te meitsjen foar dizze tabel skeakelje, en, dus, altertablePERSONenabletriggerall - om harren te aktivearjen.

Dizze basis-SQL-kommando's wurde meast brûkt, mar har kombinaasjes kinne ferskille. SQL is in tige fleksibel programmingtaal en jout de ûntwikkelders maksimum mooglikheden.

Fermelding

Fan al it boppesteande kinst in ienige konklúzje tekenje: kennis fan 'e SQL-taal is gewoan needsaaklik foar dyjingen dy't serieus yn programming komme. It leit yn it hert fan alle operaasjes dy't útfierd binne op ynternet en yn thúsgegevensbanken. Dêrom moat de takomstprogrammier in protte kommando's fan dizze taal witte, want allinich mei har help kinne jo sa wêze, kommunisearje mei de kompjûter.

Fansels binne der tekoartkommingen, lykas yn alles yn dizze wrâld, mar se binne sa lyts, dat se krekt foar meriten fade. Under alle programmearrings is SQL hast de iennichste fan har soarte, omdat it universele is, en kennis fan skripts en kodearring wurde yn it hert fan hast alle sites.

It wichtichste foardiel fan SQL bezogovorchno kin beskôge wurde syn ienfâld, want, nei alles, dat wie dy't yntrodusearre yn it skoalkurrikulum. Sûnt kin omgean sels in begjinnende programmeur, net echt versed yn talen.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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