SQL-kyselykomennot
SQL on yksi yleisimmistä tietokantojen luomiseen ja hallintaan liittyvistä ohjelmointikieleistä sekä erilaisten toimintojen suorittamisesta tietojen kanssa.
Kuten käytännössä käy ilmi, se on varsin yksinkertainenhallitsemaan ja maksimoimaan englannin kielen standardin sanasto. Kuten missä tahansa muussa ohjelmointikielessä, SQL: llä on oma logiikka ja syntaksi, joukko peruskomentoja ja sääntöjä niiden käyttämiseen.
SQL-kielen komentojen luokittelu
Kaikkien standardin SQL-komentoja voidaan pitää niiden tarkoituksen perusteella. Epävirallisen luokituksen perustana voidaan ottaa joukkoja seuraavasti:
Komennot kyselyjen rakentamiseksi.
Komentot sisäänrakennetuille toiminnoille ja toiminnoille.
Trigger- ja järjestelmätaulukkomennot.
Yhdistelmäjoukot päivämäärän ja merkkijonomuuttujien kanssa.
Komennot tietojen ja taulukoiden kanssa.
Tätä luokitusta voidaan jatkaa loputtomiin, mutta SQL-kielen komentojonon peruskokoelmat rakennetaan näiden tyyppien perusteella.
Kun otetaan huomioon kielen luokittelu,mainita, että se on yleismaailmallinen, kuten sen soveltamisala osoittaa. Tämä ohjelmointikieli ja sen variantit hyödynnetään paitsi standardin ympäristössä, mutta myös muissa ohjelmissa, jotka tavalla tai toisella, olet käyttänyt.
SQL-sovelluksen laajuutta voidaan tarkastellanäkökulmasta Office-ohjelmisto, nimittäin Microsoft Access. Tämä kieli tai pikemminkin sen versio - MySQL, antaa sinun hallita tietokantoja Internetissä. Jopa Oracle-kehitysympäristö käyttää SQL-komentoja pohjana.
SQL: n käyttäminen MicrosoftAccessissa
Yksi helpoimmista käyttötavoistaTietokannan ohjelmointikieltä pidetään Microsoft Office -ohjelmistopaketti. Ohjelmiston tutkiminen on tietojenkäsittelytieteen kurssilla, ja yhdennessätoista luokassa käsitellään MicrosoftAccess-tietokannan hallintajärjestelmää.
Se on opiskellessaan tätä sovellusohjelmaatutustua tietokantojen kehittämiskieliin ja saada perustiedot kaikesta siinä. Access SQL -komennot ovat aivan alkeellisia, tietenkin, jos niitä tarkastellaan ammattitasolla. Tällaisten komentoiden suorittaminen on hyvin yksinkertaista, ja ne luodaan mukautetussa koodieditorissa.
Mieti erityistä esimerkkiä:
SELECT Pe_SurName
FROM Pherson
WHERE Pe_Name = "Mary";
Komennon syntaksin perusteella voidaan ymmärtää, että se palaa käyttäjälle nimen, tässä tapauksessa Mary-nimiselle naiselle, joka on tallennettu Yhteystiedot-tietokanta-taulukkoon.
Vaikka Accessin SQL-käyttö on rajoitettua, joskus tällaiset yksinkertaiset kyselyt voivat merkittävästi yksinkertaistaa tehtävän suorittamista.
SQL-komentojen käyttäminen Oracleissa
Oracle on todennäköisesti ainoa vakavaMicrosoft SQL Serverin kilpailija. Tämä kehitys- ja tietokannanhallintaympäristö johtaa jatkuvasti Microsoft-ohjelmistotuotteiden toimintojen parantamiseen, sillä kilpailu on edistyksen moottori. Vakituisesta kilpailusta huolimatta Oraclen SQL-komennot toistavat SQL: n. On syytä huomata, että vaikka Oraclea pidetään melkein täydellisenä kopiona SQL: stä, tämän järjestelmän logiikkaa ja koko kieltä pidetään yksinkertaisempana.
Oracle-järjestelmää käytettäessä tiettyjäkomennolla ei ole tällaista monimutkaista rakennetta. Jos tarkastelemme näiden tietokantojen kehitysympäristöjen kykyjä, Oracleilla ei ole monimutkaista sisäkkäisten kyselyjen rakennetta.
Tämä ero mahdollistaa nopeutumisen monta kertaatietojen käsittelyä, mutta toisaalta johtaa muuttamaan irrationaalista käyttöä joissakin yksittäistapauksissa. Oraclein rakenne perustuu pääasiassa tilapäisiin taulukoihin ja niiden käyttöön. Esimerkkinä: SQL-komennot tässä järjestelmässä on rakennettu analogisesti SQL-kielen standardien kanssa, vaikka ne poikkeavat hieman siitä.
SELECTCONCAT (CONCAT (CONCAT ("Employee", sname),CONCAT (SUBSTR (otch, 0, 1))), CONCAT ("hyväksytty", acceptdate)) FROM työntekijöistä, joissa acceptdate> to_date ('01 .01.80 ',' dd.mm.yyyy ');
Tämä kysely palauttaa työntekijän tiedotjotka palkataan tietyn ajan. Vaikka kyselyn rakenne eroaa Microsoft SQL Serverista, SQL-komentojen suorittaminen näissä järjestelmissä on samanlainen, lukuun ottamatta pieniä yksityiskohtia.
SQL: n käyttäminen Internetissä
Kun maailmanlaajuinen verkko on tullut, se onInternet, SQL-kielen käyttö laajenee. Kuten tiedetään, paljon tietoa tallennetaan verkkoon, mutta se ei sijaitse satunnaisesti, vaan sijoitetaan sivustoille ja palvelimille tiettyjen kriteerien mukaan.
Tietojen säilyttäminen Internetissä, kuten kohdassamuissa paikoissa tietokannat ovat suoraan vastuussa, ja sivustot ovat hallintajärjestelmiä. Verkkosivustot ja niiden ohjelmakoodi ovat yleensä järjestäytyneet eri ohjelmointikielillä, mutta tietokanta perustuu yhteen SQL-lajikkeista, nimittäin MySQL-web-rajapintoihin perustuvasta tietokannan luomisesta.
Tämän kielen syntaksi ja pääkäskyjoukko kopioivat täysin tuttu SQL: n, mutta joitakin sen lisäyksiä, jotka tekevät siitä eron Microsoft tSQL Serverista.
SQL-komennot ovat täysin samanlaisia paitsisyntaksi, mutta myös standardin virallisten sanojen joukkoon. Ainoa ero on pyynnön soittamisessa ja jäsentämisessä. Tarkastellaan esimerkiksi pyyntöä luoda uusi taulukko, joka on se, joka on ensimmäinen asia, jota lapset oppivat tietotekniikassa:
$ link = mysqli_connect ("localhost", "root", "", "tester");
jos (! $ link) kuolee ("Error");
$ query = "luo taulukon käyttäjät (
kirjaudu sisään VARCHAR (20),
salasana VARCHAR (20)
) ";
jos (mysqli_query ($ link, $ query)) echo "Taulukko on luotu.";
elseecho "Taulukkoa ei ole luotu:" .mysqli_error ();
mysqli_close ($ link);
Tällaisen kyselyn tuloksena saat uuden taulukon "Käyttäjät", joissa on kaksi kenttää: kirjautuminen ja salasana.
Syntaksi on muutettu Webiksi, mutta se perustuu komentojen MicrosoftSQLServeriin.
Rakennushaku MicrosoftSQLServer
Taulukoiden haku tietystä tietosarjasta on yksi SQL-toiminnan päätehtävistä. Tällaisia toimintoja varten valitaan komento SQL: ssä. Seuraavassa käsitellään häntä.
Komennon rakentamisen säännöt ovat hyvin yksinkertaisia, jaSQL-komennon valintakomento on rakennettu seuraavasti. Esimerkiksi on olemassa taulukko, jossa on tietoja työntekijästä, jolla on esimerkiksi nimi Henkilö. Tehdään tehtävä, että taulukosta on valittava työntekijöitä koskevat tiedot, joiden syntymäaika on tammikuun ensimmäisen ja kuluvan vuoden ensimmäisen maaliskuun välillä. Tällaiselle näytteelle on tarpeen suorittaa SQL-komento, jossa ei ole vain vakiorakennetta, vaan myös valintaehto:
Valitse * Henkilöltä
Jos P_BerthDay> = '01 / 01/2016 'ja P_BerthDay <= '03 / 01/2016'
Tällaisen komennon suorittaminen palauttaa kaikki tiedottyöntekijät, joiden syntymäpäivä on sinä ajanjaksona. Joskus voi olla tehtävä, että näytetään vain työntekijän sukunimi, nimi ja sukuhenkilön nimi. Voit tehdä tämän kyselyn hieman eri tavalla, esimerkiksi seuraavalla tavalla:
ValitseP_Name - nimi
P_SurName - sukunimi
P_Patronimic - keskimmäinen nimi
henkilöstä
Jos P_BerthDay> = '01 / 01/2016 'ja P_BerthDay <= '03 / 01/2016'
Tämä on kuitenkin vain jotain. Hän ei olennaisesti vaikuta mitään, vaan antaa vain tietoja. Mutta jos päätät tehdä SQL-kielen vakavasti, sinun täytyy oppia tekemään muutoksia tietokantaan, koska niiden rakentaminen ilman tätä on yksinkertaisesti mahdotonta. Miten tämä tehdään, käsitellään jäljempänä.
Perustiedot SQL-komentojen muuttamisesta
Kielen syntaksia ei ole rakennettu vain suoritusta varten.kyselyihin, mutta myös tietojen manipulointiin. Pohjimmiltaan tietokantojen ohjelmoijan tehtävänä on kirjoittaa komentosarjoja näytteille ja raportteille, mutta joskus on tarpeen tehdä taulukoita. Tällaisten toimien SQL-komento on pieni ja koostuu kolmesta pääkomentosta:
Lisää (lisää).
Päivitys (päivitys).
Poista (siirrä Poista).
Näiden komentoiden tarkoitus on helppo määrittääse riittää vain kääntämään heidän nimensä. Nämä komennot ovat helppokäyttöisiä ja niissä ei ole monimutkaista rakennussuunnitelmaa, mutta on syytä mainita, että jotkut niistä, jos niitä käytetään väärin, voivat aiheuttaa korjaamatonta vahinkoa alustalle.
Yleensä ennen tällaisten MSSQL-komentoiden käyttämistä sinun on harkittava ja otettava huomioon kaikki niiden toteuttamisen mahdolliset seuraukset.
Kun olet oppinut nämä komennot, voit aloittaa tietokannan taulukoiden käytön, muokkaamalla sitä ja lisäämällä uusia muuttujia tai poistamalla vanhoja.
Lisää komento
Jos haluat lisätä tietoja pöytään, käytä turvallisinta komentoa Lisää. Virheellisesti lisätty tieto voidaan aina poistaa ja palauttaa tietokantaan.
Insert-komento on tarkoitettu uusien tietojen lisäämiseen taulukkoon ja voit lisätä sekä täydellisen joukon että selektiivisesti.
Tarkastele esimerkiksi lisäyskomentoa aikaisemminkuvattu Henkilö-taulukko. Jotta voit syöttää tietoja taulukkoon, sinun on suoritettava SQL-komento, jonka avulla voit lisätä kaikki tiedot taulukkoon tai täyttää ne selektiivisesti.
Lisää henkilöön
Valitse "Grigoriev", "Vitaly", "Petrovich", "01/01/1988"
MS SQL SERVER käsittelee tällaisen suunnitelman automaattisestitäytä kaikki taulukon solut määritellyillä tiedoilla. On tilanteita, joissa työntekijällä ei ole keskinäistä nimeä, esimerkiksi hän tuli työskentelemään vaihtoon Saksasta. Tällöin sinun on suoritettava tietojen syöttökomento, joka laittaa taulukkoon vain, mikä on tarpeen. Tämän komennon syntaksi on seuraava:
Insertintoperson (P_Name, P_SurName, P_BerthDay)
Arvot ("David", "Guk", "02/11/1986")
Tämä komento täyttää vain määritetyt solut, ja kaikki loput ovat nollia.
Komento tietojen vaihtamiseksi
Voit muuttaa sekä koko rivin ettäJotkut solut käyttävät Update SQL -komentoa. On välttämätöntä suorittaa tällainen komento vain tietyllä ehdolla, eli määritellä täsmällisesti, missä rivissä numero on tarpeen tehdä muutoksia.
Päivitys SQL-komennolla on yksinkertainen syntaksi. Oikea käyttö edellyttää, että määrität, mitkä tiedot, missä sarakkeessa ja missä tietueessa kannattaa vaihtaa. Seuraavaksi luo käsikirjoitus ja suorita se. Harkitse esimerkkiä. On tarpeen muuttaa David Hooken syntymäaikaa, joka on lueteltu työntekijän taulukossa 5.
Päivitä henkilö
Aseta P_BerthDay = '02 / 10/1986 ', jossa P_ID = 5
Ehto (tässä komentosarjassa) ei salli muuttaa syntymäaikaa kaikissa taulukon tietueissa, vaan päivittää vain ne välttämättömät.
Se on tiimi, jota ohjelmoijat käyttävät useimmiten, koska sen avulla voit muuttaa taulukon tietoja aiheuttamatta merkittävää haittaa kaikille tiedoille.
Komennot sisäisten toimintojen ja toimintojen käyttöön
SQL-kielen avulla et voi rakentaa vainvaatii, mutta myös luo sisäänrakennetut mekanismit tietojen käsittelyyn. Pääsääntöinä on hetkiä, jolloin sinun on käytettävä aiemmin yhden kyselyn ruudussa kirjoitettua otosta.
Logiikan perusteella sinun on kopioitava teksti.näytteenotto ja aseta oikeaan paikkaan, mutta voit saada yksinkertaisemman ratkaisun. Harkitse esimerkki, kun raportin tulostuksen painike näkyy käyttöliittymässä, esimerkiksi Excelissä. Tämä toiminto suoritetaan tarpeen mukaan. Tällaisiin tarkoituksiin ovat sisäänrakennetut tallennetut menettelyt. SQL-kyselykomennot, tässä tapauksessa, on suljettu menettelyyn ja kutsutaan SQLExec-komennolla.
Oletetaan, että menettely on luotujossa näkyvät työntekijöiden syntymäaika edellä kuvatusta henkilötaulukosta. Tällöin koko pyyntöä ei tarvitse kirjoittaa. Tarvittavien tietojen hankkimiseksi riittää suorittaa Exec [procedure name] -komento ja siirtää tarvittavat parametrit valinnalle. Esimerkkinä mainittakoon tällaisen menettelyn luomisen mekanismi:
CREATEPROCEDUREPrintPerson
@DB smalldatetime
@DE smalldatetime
AS
SET NOCOUNT ON;
SELECT * henkilöstä
FROM HumanResources.vEmployeeDepartmentHistory
WHERE P_BerthDay> = @DB ja P_BerthDay <= @DE
ANDEndDateISNULL;
GO
Tämä menettely palauttaa kaikki tiedot työntekijöistä, joiden syntymäpäivä on määritetyssä ajassa.
Tietojen eheyden organisointi. laukaisee
Joitakin MS SQL -komentoja voidaan jopa sanoarakenteet mahdollistavat paitsi organisoida tietomuutoksia myös varmistaa heidän eheytensä. Tätä tarkoitusta varten kieli on tarkoitettu järjestelmärakenteille, jotka ohjelmoija itse luo. Nämä ovat niin sanottuja laukaisijoita, jotka voivat tarjota tietojen hallintaa.
Tässä tapauksessa järjestää ehtojen tarkistaminenkäytetään tavallisia SQL-kyselykomentoja. Laukaisijoissa voit luoda paljon ehtoja ja rajoituksia tietojen käsittelyyn, jotka auttavat hallitsemaan paitsi tiedonsiirtoa, mutta myös estämään tietojen poistamisen, muuttamisen tai lisäämisen.
SQL-komentoja, joita voidaan käyttää liipaisimessa, eivät ole rajoitettuja. Harkitse esimerkkiä.
Jos kuvataan mekanismia liipaisimen luomiseksi, SQL-komentojen tyypit ovat tässä samat kuin menettelyn luontiin. Algoritmia kuvataan alla.
Ensimmäinen vaihe on kuvata palvelukomento laukaisimien luomiseksi:
LUOVA TRIGGER Person_Insert
Määritä seuraavaksi, mihin taulukkoon:
ONPerson
Ilmoitamme, mihin toimintaan tiedot (tässä tapauksessa meidän on vaihdettava tietoja).
Seuraava vaihe on määrittää taulukot ja muuttujat:
ilmoittaa @ID int. @Date smalldatetime @nID int. @nDatesmalldatetime
Seuraavaksi ilmoitamme kohdistimet tietojen valitsemiseksi taulukoista tietojen poistamiseksi ja lisäämiseksi:
DEclare kohdistin C1 valitsemalla P_ID, P_BerthDay Inserted
DEclare kohdistin C2 valitulle P_ID, P_BerthDay poistettu
Asettamme tietojen valintavaiheet. Kun osoittimien rungossa me määrittelemme tilan ja sen reaktion:
jos @ID = @ nID ja @nDate = "01/01/2016"
alkaa
sMasseges "Ei voi suorittaa toimintoa.Päivä ei sovi"
pää
On syytä mainita, että liipaisin ei voi vain luoda vaan myös poistaa käytöstä jonkin aikaa. Tätä manipulaatiota voi suorittaa vain ohjelmoija suorittamalla SQL SERVER -komennot:
altertablePERSONdisabletriggerall - poista kaikki tämän taulukon aiheuttamat laukaisimet ja vastaavasti vaihtoehtojaPERSONenabletriggerall - jotta ne voidaan ottaa käyttöön.
Näitä SQL-komentoja käytetään useimmiten, mutta niiden yhdistelmät voivat olla hyvin erilaisia. SQL on hyvin joustava ohjelmointikieli ja antaa kehittäjille mahdollisimman paljon mahdollisuuksia.
johtopäätös
Edellä mainitusta voit tehdäainoa johtopäätös: SQL-kielen tunteminen on yksinkertaisesti tarpeen niille, jotka aikovat vakavasti osallistua ohjelmointiin. Se on kaikkien Internetissä ja kotitietokannoissa suoritettujen toimintojen perusta. Siksi tulevan ohjelmoijan on välttämättä tiedettävä tämän kielen monta käskyä, koska vain heidän avullaan voidaan kommunikoida tietokoneen kanssa.
Tietenkin on olemassa haittoja, kuten kaikessa siitä.maailmalla, mutta ne ovat niin vähäpätöisiä, että ne yksinkertaisesti kääntyvät vaaleiksi hyveiden edessä. Kaikkien ohjelmointikielien joukossa SQL on melkein sellainen, koska se on yleinen, ja skriptien ja koodien kirjoittamisen tuntemus on lähes kaikkien sivustojen taustalla.
SQL: n tärkein etu voi olla ehdoittapitää sitä yksinkertaisuutena, koska loppujen lopuksi hän oli mukana koulun opetussuunnitelmassa. Jopa noviisi-ohjelmoija, joka ei ymmärrä kieliä, voi selviytyä siitä.