Mga computerProgramming

SQL-query utos

Ang SQL ay isa sa mga pinaka-karaniwang mga programming language para sa paglikha at pamamahala ng isang database, pati na rin sa pagsasagawa ng iba't ibang mga aksyon sa data mismo.

Bilang nagpapakita ng kasanayan, ito ay medyo simple upang matuto at ginagawang ang karamihan sa mga karaniwang bokabularyo ng wikang Ingles. Tulad ng anumang iba pang programming language, ang SQL ay may sariling lohika at syntax, isang set ng mga pangunahing utos at tuntunin para sa paggamit nito.

Pag-uuri ng mga utos ng SQL wika

Ang lahat ng mga pamantayan ng SQL command ay maaaring isaalang-alang batay sa kanilang layunin. Bilang isang batayan para sa pribadong pag-uuri, maaaring tumagal ang isa tulad ng:

  1. Command para sa pagtatayo ng mga query.

  2. Mga utos para sa mga built-in na pamamaraan at pag-andar.

  3. Mga utos ng trigger at sistema ng talahanayan.

  4. Mga hanay ng kumbinasyon para sa pagtatrabaho sa petsa at mga variable ng string.

  5. Command para sa pagtatrabaho sa data at mga talahanayan.

Ang pag-uuri na ito ay maaaring magpatuloy nang walang katiyakan, ngunit ang mga pangunahing set ng command ng SQL wika ay itatayo batay sa mga uri na ito.

Kung isasaalang-alang ang pag-uuri ng wika, hindi maaaring makatulong ang isa ngunit banggitin na ito ay pangkalahatan, gaya ng ipinahiwatig ng saklaw ng paggamit nito. Ang programming language na ito at ang mga variant nito ay ginagamit hindi lamang sa karaniwang kapaligiran, kundi pati na rin sa ibang mga programa na, isang paraan o iba pa, ginamit mo.

Ang saklaw ng paggamit ng SQL ay maaaring matingnan mula sa punto ng view ng opisina ng software, lalo Microsoft Access. Ang wikang ito, o sa halip, ang bersyon nito - MySQL, ay nagbibigay-daan sa iyo upang mangasiwa ng mga database sa Internet. Kahit na ang kapaligiran ng pag-unlad ng Oracle ay gumagamit ng mga utos ng SQL bilang batayan nito.

Paggamit ng SQL sa Microsoft Access

Isa sa pinakasimpleng halimbawa ng paggamit ng wika para sa programming database ay ang pakete ng software ng MicrosoftOffice. Ang pag-aaral ng produktong software na ito ay ibinibigay ng kurso sa paaralan ng agham sa computer, at sa ikalabing-isang klase ang sistema ng pamamahala ng database ng MicrosoftAccess ay isinasaalang-alang.

Ito ay sa panahon ng pag-aaral ng application na ito na ang mga mag-aaral na pamilyar sa mga wika ng pagbuo ng database at makakuha ng isang pangunahing pag-unawa sa lahat ng bagay sa loob nito. Ang mga command sa SQL ng access ay medyo primitive, siyempre, kung titingnan mo ang mga ito propesyonal. Ang pagpapatupad ng naturang mga utos ay napaka-simple, at ang mga ito ay nilikha sa isang na-customize na editor ng code.

Isaalang-alang natin ang isang kongkreto halimbawa:

Piliin ang Pe_SurName

MULA SA Pherson

WHERE Pe_Name = 'Mary';

Batay sa syntax ng command, maaari mong maunawaan na babalik ito sa huling pangalan ng gumagamit, sa kasong ito ang isang babaeng nagngangalang Maria, na nakaimbak sa talaan ng mga database ng Mga Contact.

Kahit na ang paggamit ng SQL sa Access ay limitado, kung minsan ang mga simpleng mga query ay maaaring lubos na gawing simple ang pagpapatupad ng nakatalagang gawain.

Paggamit ng mga utos ng SQL sa Oracle

Ang Oracle ay marahil ang tanging seryosong katunggali sa Microsoft SQL Server. Ang kapaligiran na ito para sa pag-unlad at pangangasiwa ng database na patuloy na hahantong sa pagpapabuti ng mga function ng produkto ng software ng Microsoft, dahil ang kumpetisyon ay ang engine ng pag-unlad. Sa kabila ng pare-pareho ang tunggalian, ang SQL command ng Oracle ay paulit-ulit na SQL. Dapat tandaan na, bagaman ang Oracle ay itinuturing na halos isang kumpletong kopya ng SQL, ang lohika ng sistemang ito at ang wika bilang isang buo ay itinuturing na mas simple.

Ang sistema ng Oracle ay walang ganitong komplikadong istraktura kapag gumagamit ng isang tiyak na hanay ng mga utos. Kung isinasaalang-alang namin ang mga kakayahan ng mga database development environment na ito, ang Oracle ay walang komplikadong istruktura ng mga nested query.

Ang pagkakaiba na ito ay nagbibigay-daan nang maraming beses upang mapabilis ang gawain sa data, ngunit, sa kaibahan, humahantong sa isang walang kakayahang paggamit ng memorya, sa ilang mga indibidwal na mga kaso. Ang istraktura ng Oracle ay pangunahing itinatayo sa pansamantalang mga talahanayan at ang kanilang paggamit. Bilang isang halimbawa: Ang mga SQL command sa system na ito ay binuo sa pamamagitan ng pagkakatulad sa mga pamantayan ng wika ng SQL mismo, bagaman hindi gaanong mahalaga at naiiba mula dito.

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

Ang query na ito ay babalik ang data tungkol sa mga empleyado na inupahan para sa isang tiyak na tagal ng panahon. Kahit na ang istraktura ng kahilingan ay naiiba mula sa Microsoft SQL Server, ang pagpapatupad ng mga utos ng SQL sa mga sistemang ito ay katulad, maliban sa mga maliliit na detalye.

Paggamit ng SQL sa Internet

Sa pagdating ng World Wide Web, iyon ay, sa Internet, lumalawak ang saklaw ng paggamit ng wikang SQL. Tulad ng alam mo, nag-iimbak ang network ng maraming impormasyon, ngunit hindi ito chaotically matatagpuan, ngunit nai-post sa mga site at server ayon sa ilang pamantayan.

Ang imbakan ng impormasyon sa Internet, tulad ng sa ibang lugar, ay tuwirang responsibilidad ng mga database, at mga site ay mga sistema ng pamamahala. Karaniwan, ang mga site at ang kanilang mga code ay nakaayos sa iba't ibang mga wika ng programming, ngunit ang database ay batay sa isa sa mga varieties ng SQL, lalo, ang database ng paglikha ng wika, nakatuon sa mga interface ng MySQL web.

Ang syntax at pangunahing hanay ng mga utos ng wikang ito ay ganap na kumopya sa karaniwang SQL, ngunit may ilan sa mga karagdagan nito, na nagbibigay ito ng pagkakaiba mula sa Microsoft tSQL Server.

Ang mga utos ng SQL ay ganap na katulad hindi lamang sa syntax, kundi pati na rin sa karaniwang hanay ng mga salita ng serbisyo. Ang pagkakaiba ay lamang sa tawag at pagbubuo ng kahilingan. Halimbawa, maaari mong isaalang-alang ang isang query upang lumikha ng isang bagong talahanayan, ito ang una na natutunan ng mga bata sa mga paaralan sa agham ng computer:

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

Kung (! $ Link) mamatay ("Error");

$ Query = 'Gumawa ng mga gumagamit ng talahanayan (

Mag-login VARCHAR (20),

Password VARCHAR (20)

) ';

Kung (mysqli_query ($ link, $ query)) echo "Ang talahanayan ay nilikha.";

Elseecho "Ang talahanayan ay hindi nilikha:" .mysqli_error ();

Mysqli_close ($ link);

Bilang resulta ng kahilingan na ito, maaari kang makakuha ng bagong "Mga User" na talahanayan, na magkakaroon ng dalawang mga patlang: pag-login at password.

Ang syntax ay binago sa Web, ngunit batay sa mga utos ng MicrosoftSQLServer.

Mga query ng gusali para sa Microsoft SQL Server

Ang pagpili mula sa mga talahanayan ng isang partikular na hanay ng data ay isa sa mga pangunahing gawain sa SQL. Para sa mga operasyong tulad, ang piling command sa SQL ay ibinigay. Ito ay tatalakayin sa ibaba.

Ang mga patakaran para sa paggawa ng isang command ay napaka-simple, at ang piliin ang command sa SQL ay itinayo bilang mga sumusunod. Halimbawa, may isang talahanayan na may data tungkol sa empleyado, na, halimbawa, ay may pangalan na Tao. Magtakda ng isang gawain na mula sa table na kinakailangan upang pumili ng data tungkol sa mga empleyado na ang petsa ng kapanganakan ay nasa agwat mula sa unang Enero hanggang sa unang Marso ng kasalukuyang taon kasama. Para sa tulad ng isang sample, kailangan mong magsagawa ng isang SQL command na hindi lamang magkaroon ng isang standard na konstruksiyon, ngunit din ng isang kondisyon sa pagpili:

Piliin ang * mula sa Tao

Kung saan P_BerthDay> = '01 / 01/2016 'at P_BerthDay <= '03 / 01/2016'

Ang pagpapatupad ng ganoong utos ay ibabalik ang lahat ng data tungkol sa mga empleyado na ang kaarawan ay nasa panahon na itinakda mo. Minsan ang gawain ay maaaring maging dedikado lamang sa huling pangalan, pangalan at patronymic ng empleyado. Upang gawin ito, ang query ay dapat bumuo ng bahagyang naiiba, halimbawa, sa ganitong paraan:

Ang SelectP_Name ay ang pangalan

P_SurName - apelyido

P_Patronimic - patronymic

Mula sa Tao

Kung saan P_BerthDay> = '01 / 01/2016 'at P_BerthDay <= '03 / 01/2016'

Gayunpaman, ito ay isang pagpipilian lamang ng isang bagay. Siya, sa kakanyahan, ay hindi nakakaapekto sa anumang bagay, ngunit nagbibigay lamang ng impormasyon. Ngunit kung magpasya kang kumuha ng SQL seryoso, kailangan mong malaman kung paano gumawa ng mga pagbabago sa mga database, dahil ang pagbuo ng mga ito nang walang ito ay imposible lamang. Ang tapos na ito ay tatalakayin sa ibaba.

Pangunahing mga utos ng SQL para sa pagbabago ng data

Ang syntax ng wika ay binuo hindi lamang para sa querying, kundi pati na rin para sa pagmamanipula ng data. Talaga, ang gawain ng database programmer ay pagsusulat ng mga script para sa mga sample at mga ulat, ngunit kung minsan kailangan mong gumawa ng mga pag-edit sa mga talahanayan. Ang listahan ng mga utos ng SQL para sa naturang pagkilos ay maliit at binubuo ng tatlong pangunahing utos:

  1. Magsingit.

  2. I-update.

  3. Tanggalin.

Ang layunin ng mga utos na ito ay madaling matukoy, para sa ito ay sapat lamang upang isalin ang kanilang pangalan. Ang mga utos na ito ay madaling gamitin at walang kumplikadong pamamaraan sa pagtatayo, ngunit ito ay nagkakahalaga na banggitin na ang ilan sa mga ito, kung ginamit nang hindi wasto, ay maaaring maging sanhi ng hindi maibalik na pinsala sa database.

Bilang isang tuntunin, bago gamitin ang mga utos ng MSSQL na kailangang maisip, at isinasaalang-alang ang lahat ng posibleng mga kahihinatnan ng kanilang pagpapatupad.

Ang pagkakaroon ng natutunan ang mga utos na ito, magagawa mong ganap na magsimulang magtrabaho sa mga talahanayan ng database, sa gayon binabago ito at nagpapakilala ng ilang bagong mga variable o pagtanggal ng mga lumang.

Ang Ipasok na utos

Upang maipasok ang data sa talahanayan, gamitin ang pinakaligtas na utos - Ipasok. Maaaring palaging tinanggal ang data na hindi wastong ipinasok at muling pumasok sa database.

Ang Ipasok na utos ay ginagamit upang magpasok ng bagong data sa talahanayan at nagbibigay-daan sa iyo upang magdagdag ng parehong kumpletong hanay at pili.

Halimbawa, isaalang-alang ang ipinasok na utos sa naunang inilarawan na talahanayan ng Tao. Upang maipasok ang data sa talahanayan, kailangan mong isagawa ang command na SQL, na magpapahintulot sa iyo na isama ang lahat ng data sa talahanayan o punan ito nang pili.

Ipasok ang tao

Piliin ang 'Grigoriev', 'Vitaliy', 'Petrovich', '01 / 01/1988 '

Ang mga utos ng MS SQL SERVER ng planong ito ay awtomatikong populate ang lahat ng mga cell sa table na may tinukoy na data. May mga sitwasyon kung ang isang empleyado ay walang gitnang pangalan, halimbawa, siya ay dumating upang gumana mula sa Alemanya para sa isang palitan. Sa kasong ito, kailangan mong isagawa ang isang utos ng pagpasok ng data na mag-lista lamang kung ano ang kinakailangan sa talahanayan. Ang syntax para sa command na ito ay:

Insertintoperson (P_Name, P_SurName, P_BerthDay)

Mga Halaga ('David', 'Hook', '02 / 11/1986 ')

Ang ganitong utos ay punan lamang ang tinukoy na mga cell, at lahat ng iba ay magiging null.

Command para sa pagbabago ng data

Upang i-update ang data para sa buong hilera o para sa ilang mga cell, gamitin ang Update SQL command. Upang maisagawa ang ganitong utos kinakailangan lamang sa isang partikular na kundisyon, katulad na tiyak na tukuyin kung anong linya ayon sa numero na kinakailangan upang gumawa ng mga pagbabago.

Ang I-update ang SQL command ay may simpleng syntax. Para sa wastong paggamit, kailangan mong tukuyin kung aling data, kung aling haligi at kung aling entry ang dapat mabago. Susunod, itala ang script at isagawa ito. Isaalang-alang natin ang isang halimbawa. Kinakailangang baguhin ang petsa ng pagsilang ni David Hooke, na kasama sa talahanayan ng mga empleyado sa ilalim ng numero 5.

I-update ang Tao

Itakda ang P_BerthDay = '02 / 10/1986 'kung saan P_ID = 5

Ang kondisyon (sa script na ito) ay hindi pinapayagan ang pagbabago ng petsa ng kapanganakan sa lahat ng mga talaan ng talahanayan, ngunit ang mga update lamang ang mga kinakailangan.

Ito ang utos na madalas na ginagamit ng mga programmer, dahil pinapayagan nito na baguhin mo ang data sa isang table nang hindi nagiging sanhi ng malaking pinsala sa lahat ng impormasyon.

Command para sa paggamit ng mga built-in na pamamaraan at pag-andar

Paggamit ng SQL, hindi ka lamang maaaring magtayo ng mga query, kundi pati na rin lumikha ng mga built-in na mekanismo para sa pagtatrabaho sa data. Bilang isang tuntunin, may mga oras na kailangan mong gamitin sa katawan ng isang query ng isang sample na nakasulat na mas maaga.

Kung tama ang hatol mo, kailangan mong kopyahin ang teksto ng sample at i-paste ito sa tamang lugar, ngunit maaari mong gawin sa isang mas simpleng solusyon. Tingnan natin ang isang halimbawa kapag ang isang pindutan ay ipinapakita sa nagtatrabaho interface para sa pag-print ng isang ulat, sabihin sa Excel. Ang operasyon na ito ay gumanap kung kinakailangan. Para sa mga layuning ito, ang mga built-in na nakaimbak na pamamaraan ay ginagamit. Ang command ng SQL query, sa kasong ito, ay ang pamamaraan at tinatawag na gamit ang SQLExec command.

Ipagpalagay na ang isang pamamaraan ay nilikha upang i-output ang petsa ng kapanganakan ng mga empleyado mula sa naunang inilarawan na talahanayan ng Tao. Sa kasong ito, hindi na kailangang isulat ang buong query. Upang makuha ang kinakailangang impormasyon, sapat na ipatupad ang command Exec [pangalan ng pamamaraan] at ilipat ang mga kinakailangang parameter para sa pagpili. Bilang isang halimbawa, maaari mong isaalang-alang ang mekanismo para sa paglikha ng isang pamamaraan ng kalikasan na ito:

CREATEPROCEDUREPrintPerson

@ DB smalldatetime

@DE smalldatetime

AS

Itakda ang NOCOUNT SA;

PUMILI * mula sa Tao

MULA HumanResources.vEmployeeDepartmentHistory

SAAN P_BerthDay> = @DB at P_BerthDay <= @DE

ANDEndDateISNULL;

Pumunta

Ang pamamaraan na ito ay babalik ang lahat ng impormasyon tungkol sa mga empleyado na ang kaarawan ay nasa isang naibigay na tagal ng panahon.

Pagsasama-sama ng integridad ng data. Mga nag-trigger

Ang ilang mga MS SQL utos, maaari mo ring sabihin disenyo, payagan ang hindi lamang upang ayusin ang data pagmamanipula, ngunit din upang masiguro ang kanilang integridad. Para sa ganitong mga layunin, ang wika ay dinisenyo na disenyo ng sistema, na lumilikha ng programmer. Ang mga ito ay tinatawag na mga nag-trigger na maaaring magbigay ng kontrol ng data.

Sa kasong ito, ang karaniwang mga command ng SQL query ay ginagamit upang ayusin ang check ng kalagayan. Sa mga nag-trigger, maaari kang lumikha ng maraming mga kundisyon at mga paghihigpit para sa pagtatrabaho sa data na makatutulong na pamahalaan hindi lamang ang pag-access sa impormasyon, kundi mapipigilan din ang pagtanggal, pagbabago o pagpapasok ng data.

Ang mga uri ng mga command na SQL na maaaring magamit sa trigger ay walang limitasyong. Isaalang-alang ang halimbawa.

Kung ilarawan mo ang mekanismo para sa paglikha ng isang trigger, pagkatapos ay ang mga uri ng mga command SQL ay kapareho ng kapag lumilikha ng pamamaraan. Ang algorithm mismo ay inilarawan sa ibaba.

Ang unang hakbang ay upang ilarawan ang service command upang lumikha ng mga trigger:

Gumawa ng TRIGGER Person_Insert

Susunod, tukuyin kung aling table:

ONPerson

Tukuyin kung aling operasyon sa data (sa aming kaso ito ay isang operasyon ng pagbabago ng data).

Ang susunod na hakbang ay upang tukuyin ang mga talahanayan at variable:

Ipahayag ang ID @ID. @Date smalldatetime @nID int. @nDatesmalldatetime

Susunod, ipinahayag namin ang mga cursor upang pumili ng data mula sa pagtanggal ng data at mga talahanayan ng pagpapasok:

DEclare cursor C1 para piliin P_ID, P_BerthDay mula Ipinasok

DEclare cursor C2 para piliin P_ID, P_BerthDay mula sa tinanggal

Itakda ang mga hakbang para sa pagpili ng data. Pagkatapos, sa katawan ng mga cursors inirerekomenda namin ang kalagayan at ang reaksyon dito:

Kung @ID = @nID at @ nDate = '01 / 01/2016 '

Magsimula

SMasseges 'Ang operasyon ay hindi maisasagawa. Ang petsa ay hindi magkasya '

Dulo

Ito ay nagkakahalaga na banggitin na ang trigger ay hindi lamang nilikha, ngunit din hindi pinagana para sa isang habang. Ang pagmamanipula ay maaari lamang gawin ng programista sa pamamagitan ng pagpapatupad ng mga utos ng SQL SERVER:

AltertablePERSONdisabletriggerall - upang huwag paganahin ang lahat ng mga trigger na nilikha para sa table na ito, at, nang naaayon, altertablePERSONenabletriggerall - upang paganahin ang mga ito.

Ang mga pangunahing SQL command na ito ay madalas na ginagamit, ngunit ang kanilang mga kumbinasyon ay maaaring magkakaiba. SQL ay isang napaka-kakayahang umangkop na programming language at nagbibigay ng developer maximum na mga pagkakataon.

Konklusyon

Mula sa lahat ng nasa itaas, maaari kang gumuhit ng isang solong konklusyon: ang kaalaman tungkol sa SQL na wika ay kinakailangan lamang para sa mga taong seryoso na nakikipag-ugnayan sa programming. Ito ay namamalagi sa puso ng lahat ng mga operasyon na isinagawa sa Internet at sa mga database ng bahay. Iyon ang dahilan kung bakit ang programmer sa hinaharap ay dapat malaman ng maraming mga utos ng wikang ito, dahil lamang sa kanilang tulong na maaari mong, kaya na magsalita, makipag-usap sa computer.

Siyempre, may mga kakulangan, tulad ng sa lahat ng bagay sa mundong ito, ngunit ang mga ito ay hindi gaanong mahalaga na sila ay lumubog sa harap ng mga merito. Kabilang sa lahat ng mga programming language, SQL ay halos isa lamang sa uri nito, sapagkat ito ay pangkalahatan, at ang kaalaman ng mga script ng pagsusulat at mga code ay nasa gitna ng halos lahat ng mga site.

Ang pangunahing bentahe ng SQL bezogovorchno maaaring ituring pagiging simple nito, dahil, matapos ang lahat, ito ay siya na ipinakilala sa kurikulum ng paaralan. Dahil ito ay maaaring panghawakan kahit na isang baguhan programmer, hindi talaga sanay sa wika.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

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