Piekļuvē izmanto sql. SQL vaicājumu valoda. Pamata SQL komandas datu mainīšanai

Iepriekšējie raksti apsprieda šīs problēmas. Aplūkota tehnoloģija datu bāzes tabulu “sql_training_st.mdb” struktūras izveidošanai, pamatojoties uz SQL vaicājumiem. Turklāt, izmantojot SQL vaicājumus, tika aizpildītas ACCESS DBVS tabulas "sql_training_st.mdb".

Ir zināms, ka relāciju datu bāzēs SQL valoda ir paredzēta, lai manipulētu ar datiem, definētu datu bāzes un tās komponentu struktūru, kontrolētu lietotāju piekļuvi datu bāzei un pārvaldītu transakcijas vai pārvaldītu izmaiņas datu bāzē.

SQL valoda sastāv no četrām grupām:

  • datu manipulācijas valoda DML;
  • DDL datu definēšanas valoda;
  • datu pārvaldības valoda DCL;
  • TCL transakciju kontroles valoda.

DML grupā ietilpst četri galvenie veidi SQL vaicājumi:

  • INSERT - paredzēts, lai tabulas beigās pievienotu vienu vai vairākus ierakstus;
  • ATJAUNINĀJUMS - jau paredzēts mainīt esošie ieraksti tabulas kolonnās vai datu modifikācijas tabulā;
  • DELETE - paredzēts ierakstu dzēšanai no tabulas;
  • SELECT - paredzēts datu atlasei no tabulām.

Lapā tika apspriesti pirmie trīs SQL vaicājumu veidi (INSERT, UPDATE, DELETE), kas attiecas uz korektīviem vaicājumiem datu bāzē.

Šajā rakstā mēs apskatīsim vaicājumus datu izgūšanai no Access datu bāzes tabulām.

Lai izgūtu Access 2003 vai 2007 datubāzē saglabāto informāciju, varat izmantot SELECT vaicājumu, lai atlasītu datus no tabulām.

Sastādām šādu SQL vaicājumu (SQL priekšraksts) izlasei; lai to izdarītu, atlasiet SQL režīmu, izpildot komandu View/SQL Mode. No tastatūras ievadiet šādu SQL priekšrakstu:

ATLASĪT*
NO Studentiem;

Šis paziņojums sastāv no divām klauzulām "SELECT *" un "FROM Students". Pirmajā klauzulā ir SELECT priekšraksts un identifikators * ("identifikators *" nozīmē visu tabulas kolonnu uzskaitījumu). Otrajā klauzulā ir priekšraksts FROM un identifikators "Students".

FROM — definē tabulu Students, kurā ir SELECT klauzulā norādītie lauki. Jāņem vērā, ka atlases vaicājumā vienmēr ir divi priekšraksti: SELECT un FROM. Atkarībā no atlases nosacījumiem atlases pieprasījumā var būt arī citi operatori. 1. attēlā parādīts datu izgūšanas pieprasījuma ekrānuzņēmums.


Rīsi. 1. SQL SELECT vaicājums, lai atlasītu datus

Šajā piemērā datu paraugs tiek ģenerēts no visām tabulas Studenti kolonnām.

Saglabājiet pieprasījumu ar nosaukumu "Students-query1". Komandas “Saglabāt” izpildes rezultātā “Navigācijas apgabalā” parādīsies objekts “Requests: Students-request1”.

Pēc atlases pieprasījuma saglabāšanas šis pieprasījums ir jāizpilda, noklikšķinot uz ikonas “Palaist”. Komandas “Run” rezultāti ir parādīti attēlā. 2.



Rīsi. 2. Datu atlase no visām tabulas Studenti kolonnām

SQL valodai nav pilnvērtīgas izstrādes valodas funkcijas, bet tā ir orientēta uz piekļuvi datiem, tāpēc ir iekļauta programmu izstrādes rīkos. Šajā gadījumā to sauc iegultais SQL. SQL valodas standartu atbalsta šādu programmēšanas valodu mūsdienīgas implementācijas: PL/1, Ada, C, COBOL, Fortran, MUMPS un Pascal.

Specializētajās klient-servera tipa aplikāciju izstrādes sistēmās programmēšanas vide papildus parasti tiek papildināta ar komunikācijas rīkiem (savienojumu izveidošana un atvienošana ar datu bāzes serveriem, tīklā radušos kļūdu noteikšana un apstrāde u.c.), izstrādes rīki. lietotāja saskarnes, projektēšanas un atkļūdošanas rīki.

Ir divas galvenās metodes iegultā SQL izmantošanai: statiskā un dinamiskā.

Plkst statisks valodas lietojums (statiskā SQL) Programmas tekstā ir izsaukumi uz SQL valodas funkcijām, kuras pēc kompilācijas ir stingri iekļautas izpildāmajā modulī. Izmaiņas izsauktajās funkcijās var būt atsevišķu izsaukuma parametru līmenī, izmantojot programmēšanas valodas mainīgos.

Plkst dinamisks valodas lietojums (dinamiskā SQL) tiek pieņemts, ka SQL funkciju izsaukumi tiek dinamiski konstruēti un šo izsaukumu interpretācija, piemēram, piekļūstot datiem no attālinātas datu bāzes, programmas izpildes laikā. Dinamiskā metode parasti tiek izmantota gadījumos, kad lietojumprogramma iepriekš nezina SQL izsaukuma veidu un tā tiek veidota dialogā ar lietotāju.

SQL valodas (kā arī citu valodu darbam ar datu bāzēm) galvenais mērķis ir sagatavot un izpildīt vaicājumus. Datu izlases rezultātā no vienas vai vairākām tabulām var iegūt ierakstu kopu, ko sauc prezentācija.

Performance būtībā ir tabula, kas izveidota vaicājuma izpildes rezultātā. Mēs varam teikt, ka tas ir saglabāta vaicājuma veids. Varat izveidot vairākus skatus, izmantojot vienas un tās pašas tabulas. Pats skats tiek aprakstīts, norādot skata identifikatoru un pieprasījumu, kas jāveic, lai to iegūtu.



Lai ērtāk strādātu ar skatiem, kursora jēdziens tika ieviests SQL valodā. Kursors ir sava veida rādītājs, ko izmanto, lai pārvietotos pa ierakstu kopām, tos apstrādājot.

Kursora apraksts un lietojums SQL ir šāds. Programmas aprakstošajā daļā kursora tipa mainīgais (CURSOR) ir saistīts ar SQL priekšraksts(parasti ar SELECT paziņojums). Programmas izpildes daļā tiek atvērts kursors (OPEN<имя курсора», перемещение курсора по записям (FETCI-1 <имя курсора>...), kam seko atbilstoša apstrāde un visbeidzot kursora aizvēršana (CLOSE<имя курсора>).

Relāciju DBVS operāciju veikšanai ar relācijām tiek izmantotas divas valodu grupas, kuru matemātiskā bāze ir E. Koda piedāvātās teorētiskās vaicājumu valodas:

Relāciju algebra;

Relāciju aprēķins.

Relāciju algebrā Visu darbību operandi un rezultāti ir attiecības. Relāciju algebras valodas ir procesuālas, jo relāciju, kas izriet no vaicājuma relāciju datu bāzē, novērtē, izpildot relāciju operatoru secību, kas tiek piemērota relācijām. Operatori sastāv no operandiem, kas ir relācijas, un relāciju operācijām.

Codd relāciju algebras darbības var iedalīt divās grupās: pamata kopu teorētiskā un speciālā relācija. Pirmajā darbību grupā ietilpst klasiskās kopu teorijas darbības: savienojums, atšķirība, krustojums un reizinājums. Otrā grupa pārstāv parasto kopu teorētisko operāciju attīstību uz reālām datu manipulācijas problēmām, tajā ietilpst operācijas: projicēšana, atlase, sadalīšana un savienošana.

Aprēķinu valodas ir neprocedūras (aprakstošas ​​vai deklaratīvas) un ļauj izteikt vaicājumus, izmantojot pirmās kārtas predikātu (funkciju priekšraksti), kas jāatbilst kortežiem vai relāciju domēniem. Datu bāzes vaicājums, kas izpildīts, izmantojot šādu valodu, satur tikai informāciju par vēlamo rezultātu. Šīs valodas raksturo vaicājumu rakstīšanas noteikumu kopu klātbūtne. Jo īpaši SQL pieder pie šīs grupas valodām.

Pielietojuma iezīmes SQL vaicājumi

SQL vaicājums ir vaicājums, kas izveidots, izmantojot SQL priekšrakstu. SQL vaicājumu piemēri ir pievienošanās vaicājumi, servera vaicājumi, vadības vaicājumi un pakārtotie vaicājumi.

Savienojuma vaicājums ir vaicājums, kas apvieno laukus (kolonnas) no vienas vai vairākām tabulām vai vaicājumiem vienā laukā vai kolonnā rezultātu ierakstu kopā. Piemēram, seši pārdevēji katru mēnesi nodrošina vadībai savu krājumu uzskaiti. Izveidojot pievienošanās vaicājumu, varat apvienot šos krājumus rezultātu ierakstu kopā un pēc tam izstrādāt tabulas izveides vaicājumu, pamatojoties uz pievienošanās vaicājumu.

Pieprasījums serverim pārsūta SQL komandas, izmantojot ODBC, serverim, piemēram, Microsoft SQL serveris. Servera vaicājumi ļauj tieši strādāt ar tabulām serverī, nevis pievienoties tām. Pieprasījuma rezultāts serverim var būt ierakstu ielāde vai datu maiņa.

Vadības vaicājums izveido vai modificē datu bāzes objektus, piemēram, Access vai SQL Server tabulas.

Apakšvaicājums sastāv no SQL SELECT priekšraksta citā atlases vai maiņas vaicājumā. Šie norādījumi tiek ievadīti pieprasījuma veidlapas rindā “Lauks”, lai definētu jaunu lauku, vai rindā “Atlases nosacījums”, lai definētu lauka atlases nosacījumu. Apakšvaicājumi tiek izmantoti, lai veiktu šādas darbības:

Apakšvaicājuma pārbaude, lai noteiktu rezultātu esamību, izmantojot rezervētos vārdus EXISTS vai NO EXISTS;

Galvenajā vaicājumā meklē visas vērtības, kas ir vienādas, lielākas vai mazākas par vērtībām, kas atgrieztas apakšvaicājumā (izmantojot JEBKURU, IN vai VISI rezervētos vārdus);

Apakšvaicājumu izveide apakšvaicājumos (ligzdotie apakšvaicājumi).

SQL valodu programmā Access var izmantot, lai izstrādātu ekrāna formas, atskaites, kā arī izveidotu makro un VBA programmas.

Saistība starp QBE un SQL valodām

Programmā Access pastāv cieša saistība starp QBE un SQL valodām. Vaicājumu tabulas (veidlapas) QBE valodā, ko aizpilda lietotājs, pirms tūlītējas izpildes tiek pārvērstas SQL izteiksmēs. Tas nozīmē, ka SQL valoda ir iekšējs standarts vaicājumu izpildei. Šim mehānismam ir tāda priekšrocība, ka tas ļauj Access sistēmai unificēt vaicājumu sagatavošanu izpildei lokālos un attālos datoros. Pēdējā gadījumā SQL ziņojums faktiski tiek pārsūtīts uz datoru - pieprasījuma serveri.

Programmā Access vaicājums var būt vienā no trim režīmiem (stāvokļiem): noformējums, SQL un tabula. Dizaina režīms tiek izmantots, lai izstrādātu jaunu vaicājumu no jauna (neizmantojot Wizards vai citus rīkus) vai lai mainītu esošā vaicājuma izkārtojumu. SQL režīmu izmanto, lai ievadītu vai skatītu SQL paziņojumus. Tabulas režīms tiek izmantots, lai strādātu ar vaicājuma rezultātiem.

SQL formās un pārskatos

Galvenie ierakstu avoti displejos un pārskatos ir tabulas un vaicājumi. Otrajā gadījumā pieprasījums var būt gatavs datu bāzes vaicājums vai tāds, kas izveidots, izstrādājot formu vai atskaiti.

SQL makro

Makro komandas ir daļa no makro, ko izmanto, lai automatizētu bieži atkārtotu darbību izpildi darbā ar datu bāzi. Makro ir viena vai vairākas makro komandas ar argumentiem.

Makro tiek izsaukti no datu bāzes loga vai automātiski, kad notiek noteikti notikumi. Notikums, kurā tiek izsaukts makro, var būt, piemēram, pogas noklikšķināšana veidlapas apgabalā vai datu bāzes loga atvēršana. Līdztekus noteiktu darbību veikšanai ar datu bāzes objektiem makro var izsaukt citus makro, Visual Basic programmas un ārējās lietojumprogrammas.

No daudzajām makro komandām divas makro komandas ir tieši saistītas ar SQL: Palaist SQL Query (Palaist SQL) un Open Query (OpenQuery)

Makro komanda Palaist SQL vaicājumu izpilda Access izmaiņu vai vadības vaicājumu, izmantojot atbilstošo SQL priekšrakstu. Šis makro ļauj veikt darbības makro, vispirms nesaglabājot vaicājumus. Varat arī izpildīt saglabātos vaicājumus, izmantojot makro.

Izmaiņu pieprasījumi ir SQL priekšraksti, kas īsteno šādas funkcijas: pievienošana (INSERT INTO), dzēšana (DELETE), tabulas izveide (SELECT...INTO) un atjaunināšana (UPDATE)

Kontroles pieprasījumi ir SQL priekšraksti, kas veic šādas funkcijas: izveido tabulu (CREATE TABLE), pārveido tabulu (ALTER TABLE), nomet tabulu (DROP TABLE), izveido indeksu (CREATE INDEX) un nomet indeksu (DROP INDEX)

Vienīgais un nepieciešamais makro komandas arguments SQL vaicājuma palaišana ir SQL priekšraksts. Makro arguments kā SQL teksts - instrukcijas tiek ievadītas manuāli makro ievades logā vai kopētas no SQL loga, kas bieži vien ir ērtāk.

Makro komanda OpenRequestļauj atvērt atlases vai šķērsvaicājumu (tabulas, noformējuma un priekšskatījuma režīmos), palaist vaicājumu, lai mainītu vai ievadītu datus.

Makro norāda trīs argumentus: pieprasījuma nosaukums, režīms un datu režīms. Pirmais arguments norāda atvēršanas pieprasījuma nosaukumu un ir obligāts. Otrais arguments norāda vaicājuma atvēršanas režīmu (tabula, noformējums un skats). Trešais arguments apraksta datu ievadīšanas veidu pieprasījumā (“Pievienot”, “Mainīt” un “Tikai lasāms”).

SQL VBA programmās

VBA, tāpat kā makro, ir paredzēts, lai automatizētu atkārtotas darbības ar Access datu bāzes objektiem.

Programmā Access ir šādi veidi, kā palaist VBA programmas:

Programmas iekļaušana pasākuma apstrādes procedūrā;

Funkcijas izsaukšana izteiksmē;

Apakšprocedūras izsaukšana citā procedūrā vai atkļūdošanas logā;

Makro komandas RunCode (RunCode) izpilde makro.

Funkcijas tiek izmantotas izteiksmēs, kas definē aprēķinātos laukus formās, pārskatos vai vaicājumos. Izteiksmes tiek izmantotas, lai norādītu nosacījumus vaicājumos un filtros, kā arī makro, VBA priekšrakstos un metodēs, kā arī SQL priekšrakstos. Apakšprocedūra var ietvert publiskas VBA apakšprogrammas, kas tiek izsauktas no citām procedūrām.

Apskatīsim datu bāzes vaicājuma izpildi, izmantojot SQL priekšrakstus programmā Visual Basic for Applications.

Pieprasījums atlasa ierakstus no datu bāzes, kas atbilst noteiktiem nosacījumiem (atlases pieprasījums), vai izdod norādījumus veikt noteiktas darbības ar ierakstiem, kas atbilst noteiktiem nosacījumiem (izmaiņu pieprasījums).

Ir šādi veidi, kā izpildīt vaicājumus:

Metodes Execute izsaukšana (lai izpildītu SQL vaicājumus izmaiņām);

Īpaša QueryDef objekta izveide un izpilde;

Izmantojot SQL priekšrakstu kā OpenRecordset metodes argumentu;

Izpildīt OpenRecordset metodi esošam QueryDef objektam;

RunSQL un OpenQuery metožu izsaukšana.

Izpildes metode izmanto, ja nepieciešams veikt izmaiņas datu bāzē, kas neatgriež ierakstus. Piemēram, ierakstu ievietošanas vai dzēšanas operācijas.

QueryDef objekts apzīmē datu bāzē saglabātu vaicājuma definīciju. To var uzskatīt par kompilētu SQL priekšrakstu.

OpenRecordset metode izmanto, lai atvērtu ierakstu kopas objektu, lai ar to veiktu turpmākas darbības.

RunSQL metode izpilda makro SQL vaicājuma palaišana VBA programmā

OpenQuery metode izpilda OpenQuery makro komandu VBA programmā. Izmantojot to, varat atvērt vaicājumu datu lapas, noformējuma vai skata režīmā. Tas iestata vienu no šiem režīmiem darbam ar datiem: pievienošana, mainīšana vai tikai lasīšana.

Vaicājuma izpildes opcijas izvēli nosaka programmētājs, ņemot vērā risināmās problēmas īpašības.

Katram tīmekļa izstrādātājam ir jāzina SQL, lai rakstītu datu bāzes vaicājumus. Un, lai gan phpMyAdmin nav atcelts, bieži vien ir jāsasmērē rokas, lai rakstītu zema līmeņa SQL.

Tāpēc esam sagatavojuši īsu SQL pamatu apskatu. Sāksim!

1. Izveidojiet tabulu

Tabulu izveidei tiek izmantots priekšraksts CREATE TABLE. Argumentiem ir jābūt kolonnu nosaukumiem, kā arī to datu tipiem.

Izveidosim vienkāršu tabulu ar nosaukumu mēnesis. Tas sastāv no 3 kolonnām:

  • id– Mēneša numurs kalendārajā gadā (vesels skaitlis).
  • nosaukums– Mēneša nosaukums (virkne, ne vairāk kā 10 rakstzīmes).
  • dienas– dienu skaits šajā mēnesī (vesels skaitlis).

Lūk, kā izskatītos atbilstošais SQL vaicājums:

CREATE TABLE mēneši (id int, nosaukums varchar(10), dienas int);

Tāpat, veidojot tabulas, vienai no kolonnām vēlams pievienot primāro atslēgu. Tādējādi ieraksti tiks saglabāti unikāli un tiks paātrināti nolasīšanas pieprasījumi. Mūsu gadījumā lai mēneša nosaukums ir unikāls (kolonna nosaukums)

CREATE TABLE mēneši (id int, nosaukums varchar(10), dienas int, PRIMARY KEY (name));

datums un laiks
Datu tipsApraksts
DATUMSDatuma vērtības
DATUMS LAIKSDatuma un laika vērtības ir precīzas līdz minūtei
LAIKSLaika vērtības

2. Rindu ievietošana

Tagad aizpildīsim savu tabulu mēnešus noderīga informācija. Ierakstu pievienošana tabulai tiek veikta, izmantojot INSERT priekšrakstu. Ir divi veidi, kā rakstīt šo instrukciju.

Pirmā metode ir nevis norādīt kolonnu nosaukumus, kurās tiks ievietoti dati, bet gan norādīt tikai vērtības.

Šī ierakstīšanas metode ir vienkārša, taču nedroša, jo nav garantijas, ka, paplašinot projektu un rediģējot tabulu, kolonnas būs tādā pašā secībā kā iepriekš. Drošs (un tajā pašā laikā apgrūtinošāks) veids, kā rakstīt INSERT paziņojumu, prasa norādīt gan vērtības, gan kolonnu secību:

Šeit ir pirmā vērtība sarakstā VĒRTĪBAS atbilst pirmās norādītās kolonnas nosaukumam utt.

3. Datu iegūšana no tabulām

Paziņojums SELECT ir mūsu labākais draugs, kad vēlamies izgūt datus no datu bāzes. To lieto ļoti bieži, tāpēc pievērsiet šai sadaļai ļoti lielu uzmanību.

Vienkāršākais priekšraksta SELECT lietojums ir vaicājums, kas atgriež visas tabulas kolonnas un rindas (piemēram, tabulas pēc nosaukuma rakstzīmes):

SELECT * FROM "rakstzīmes"

Zvaigznītes (*) simbols nozīmē, ka mēs vēlamies iegūt datus no visām kolonnām. Tā kā SQL datu bāzes parasti sastāv no vairākām tabulām, ir jānorāda atslēgvārds FROM, kam seko tabulas nosaukums, atdalot to ar atstarpi.

Dažreiz mēs nevēlamies iegūt datus no ne visām tabulas kolonnām. Lai to izdarītu, zvaigznītes (*) vietā mums ir jāpieraksta vēlamo kolonnu nosaukumi, atdalot tos ar komatiem.

SELECT id, vārds FROM mēnesis

Turklāt daudzos gadījumos mēs vēlamies, lai iegūtie rezultāti tiktu sakārtoti noteiktā secībā. SQL mēs to darām, izmantojot ORDER BY. Tas var pieņemt izvēles modifikatoru - ASC (noklusējuma) kārtošanu augošā secībā vai DESC, kārtošanu dilstošā secībā:

SELECT id, nosaukums NO mēneša PASŪTĪT PĒC nosaukuma DESC

Lietojot ORDER BY, pārliecinieties, vai priekšraksta SELECT tas ir pēdējais. Pretējā gadījumā tiks parādīts kļūdas ziņojums.

4. Datu filtrēšana

Jūs esat iemācījies atlasīt konkrētas kolonnas no datu bāzes, izmantojot SQL vaicājumu, bet ko darīt, ja mums ir arī jāizgūst noteiktas rindas? Šeit palīgā nāk WHERE klauzula, kas ļauj mums filtrēt datus atkarībā no stāvokļa.

Šajā vaicājumā mēs no tabulas atlasām tikai tos mēnešus mēnesis, kurā ir vairāk nekā 30 dienas, izmantojot operatoru lielāks par (>).

SELECT id, nosaukums FROM mēnesis WHERE dienas > 30

5. Uzlabota datu filtrēšana. UN un OR operatori

Iepriekš mēs izmantojām datu filtrēšanu, izmantojot vienu kritēriju. Sarežģītākai datu filtrēšanai varat izmantot operatorus UN un OR un salīdzināšanas operatorus (=,<,>,<=,>=,<>).

Šeit ir tabula ar četriem visu laiku visvairāk pārdotajiem albumiem. Izvēlēsimies tos, kas ir klasificēti kā roks un pārdoti mazāk par 50 miljoniem eksemplāru. To var viegli izdarīt, starp šiem diviem nosacījumiem ievietojot operatoru UN.


SELECT * FROM albums WHERE žanrs = "roks" UN pārdošanas_miljonos<= 50 ORDER BY released

6. In/Starp/Patīk

WHERE atbalsta arī vairākas īpašas komandas, kas ļauj ātri pārbaudīt visbiežāk izmantotos vaicājumus. Šeit tie ir:

  • IN — kalpo, lai norādītu nosacījumu virkni, no kuriem jebkurš var tikt izpildīts
  • BETWEEN – pārbauda, ​​vai vērtība ir norādītajā diapazonā
  • LIKE – meklē konkrētus modeļus

Piemēram, ja vēlamies atlasīt albumus ar pop Un dvēsele mūziku, mēs varam izmantot IN("vērtība1","vērtība2") .

SELECT * FROM albums WHERE žanrs IN ("pop", "soul");

Ja mēs vēlamies iegūt visus albumus, kas izdoti laikā no 1975. līdz 1985. gadam, mums ir jāraksta:

ATLASĪT * NO albumiem, KUR, kas izdoti NO 1975. LĪDZ 1985. GADĀ;

7. Funkcijas

SQL ir pildīta ar funkcijām, kas veic dažādas noderīgas lietas. Šeit ir daži no visbiežāk izmantotajiem:

  • COUNT() – atgriež rindu skaitu
  • SUM() — atgriež ciparu kolonnas kopējo summu
  • AVG() — atgriež vērtību kopas vidējo vērtību
  • MIN() / MAX() — iegūst minimālo/maksimālo vērtību no kolonnas

Lai mūsu tabulā iegūtu pēdējo gadu, mums ir jāieraksta šāds SQL vaicājums:

SELECT MAX(atbrīvots) NO albumiem;

8. Apakšvaicājumi

Iepriekšējā rindkopā mēs uzzinājām, kā veikt vienkāršus aprēķinus ar datiem. Ja mēs vēlamies izmantot šo aprēķinu rezultātu, mēs nevaram iztikt bez ligzdotiem vaicājumiem. Pieņemsim, ka mēs vēlamies izvadīt mākslinieks, albums Un izlaišanas gads vecākajam albumam tabulā.

Mēs zinām, kā iegūt šīs īpašās kolonnas:

SELECT izpildītājs, albums, izdots NO albumiem;

Mēs arī zinām, kā iegūt agrāko gadu:

SELECT MIN(atbrīvots) NO albuma;

Viss, kas tagad ir nepieciešams, ir apvienot divus vaicājumus, izmantojot WHERE:

SELECT izpildītājs,albums,izdots FROM albumiem WHERE izdots = (SELECT MIN(released) FROM albums);

9. Savienošanas galdi

Sarežģītākās datu bāzēs ir vairākas tabulas, kas ir saistītas viena ar otru. Piemēram, zemāk ir divas tabulas par videospēlēm ( video spēles) un videospēļu izstrādātājiem ( spēļu izstrādātāji).


Tabulā video spēles ir izstrādātāju kolonna ( izstrādātāja_id), taču tajā ir vesels skaitlis, nevis izstrādātāja vārds. Šis skaitlis apzīmē identifikatoru ( id) atbilstošā izstrādātāja no spēļu izstrādātāju tabulas ( spēļu izstrādātāji), loģiski sasaistot divus sarakstus, ļaujot vienlaikus izmantot abos saglabāto informāciju.

Ja mēs vēlamies izveidot vaicājumu, kas atgriež visu, kas mums jāzina par spēlēm, mēs varam izmantot INNER JOIN, lai saistītu kolonnas no abām tabulām.

ATLASĪT video_games.name, video_games.genre, game_developers.name, game_developers.country NO video_games IEKŠĒJS PIEVIENOJIES game_developers ON video_games.developer_id = game_developers.id;

Šis ir vienkāršākais un visizplatītākais JOIN veids. Ir vairākas citas iespējas, taču tās attiecas uz retāk sastopamiem gadījumiem.

10. Pseidonīmi

Ja paskatās uz iepriekšējo piemēru, jūs ievērosiet, ka ir divas kolonnas, kas tiek izsauktas nosaukums. Tas ir mulsinoši, tāpēc iestatīsim aizstājvārdu vienai no atkārtotajām kolonnām, piemēram, šo nosaukums no galda spēļu izstrādātāji tiks saukts izstrādātājs.

Mēs varam arī saīsināt vaicājumu, aizstājot tabulu nosaukumus: video spēles piezvanīsim spēles, spēļu izstrādātāji - izstrādātāji:

SELECT games.name, games.genre, devs.name AS izstrādātājs, devs.country NO video_games AS games INNER JOIN game_developers AS devs ON games.developer_id = devs.id;

11. Datu atjaunošana

Bieži mums ir jāmaina dati dažās rindās. SQL tas tiek darīts, izmantojot UPDATE priekšrakstu. UPDATE paziņojums sastāv no:

  • Tabula, kurā atrodas aizstāšanas vērtība;
  • Kolonnu nosaukumi un to jaunās vērtības;
  • Izmantojot WHERE atlasītās rindas, kuras vēlamies atjaunināt. Ja tas netiks izdarīts, visas tabulas rindas mainīsies.

Zemāk ir tabula TV sērijas ar seriāliem un to reitingiem. Tomēr tabulā iezagās neliela kļūda: lai gan sērija Troņu spēles un tiek raksturota kā komēdija, tā tiešām nav. Labosim šo!

Tabulas dati tv_series UPDATE tv_series SET genre = "drāma" WHERE id = 2;

12. Datu dzēšana

Tabulas rindas dzēšana, izmantojot SQL, ir ļoti vienkāršs process. Viss, kas jums jādara, ir atlasīt tabulu un rindu, kuru vēlaties dzēst. Izdzēsīsim pēdējo rindu tabulā no iepriekšējā piemēra TV sērijas. Tas tiek darīts, izmantojot >DELETE instrukciju.

DZĒST NO tv_series WHERE id = 4

Esiet piesardzīgs, rakstot DELETE paziņojumu un pārliecinieties, ka ir iekļauts WHERE klauzula, pretējā gadījumā visas tabulas rindas tiks dzēstas!

13. Dzēst tabulu

Ja vēlamies dzēst visas rindas, bet atstāt pašu tabulu, tad izmantojiet komandu TRUNCATE:

TRUNCATE TABLE tabulas_nosaukums;

Gadījumā, ja mēs patiešām vēlamies izdzēst gan datus, gan pašu tabulu, mums noderēs komanda DROP:

DROP TABLE tabulas_nosaukums;

Esiet ļoti uzmanīgs ar šīm komandām. Tos nevar atcelt!/p>

Ar to mūsu SQL apmācība ir beigusies! Daudz kas nav aprakstīts, taču ar to, ko jūs jau zināt, vajadzētu būt pietiekamam, lai sniegtu praktiskas iemaņas jūsu tīmekļa karjerai.

Lietojumprogramma MS Access DBMS ir pilnvērtīgs palīgs tabulās un masīvos ietvertu datu bāzu izveidei un uzturēšanai. Ja datu bāze ir pārāk liela, ir diezgan grūti ātri atrast nepieciešamās vērtības.

Tāpēc Access ir funkcija, ko sauc par vaicājumiem. Apskatīsim, kas tas ir, kā tas darbojas un kādas funkcijas tam ir.

Vaicājumu izveide programmā Microsoft Access

Lai saprastu, kā programmā Access izveidot vaicājumus, jums jāzina darba ar DBVS pamati.

Ir divi veidi, kā to izdarīt šī procedūra:

  • Vaicājumu veidotājs.
  • Vaicājumu vednis.

Pirmā metode ļauj manuāli izveidot jebkuru no visiem pieejamajiem vaicājumiem, taču ar nelielu brīdinājumu, ka lietotājam ir pieredze darbā ar Access lietojumprogrammu. Viņam arī jāsaprot vismaz tā pamatuzdevumi. Kas attiecas uz otro metodi, tas ir jāapsver sīkāk.

Vienkāršs veids iesācējiem

Zinošs cilvēks ar dažiem peles klikšķiem atlasa tos komponentus, kas lietotājam būs nepieciešami, lai izpildītu pieprasījumu, un pēc tam ātri izveido reģistru atbilstoši savāktajām atslēgu vērtībām. Ja šī ir pirmā iepazīšanās ar DBVS un lietotājam nav ne jausmas, kā programmā Access izveidot vaicājumus, tad tiek atlasīta programma Wizard.

Šajā režīmā varat iepazīties un izprast šādus pieprasījumu veidus:

  • Vienkārši.
  • Krusts.
  • Ieraksti bez padotajiem.
  • Ierakstu dublikāti.

Šī izvēle tiek veikta jau pirmajā darba posmā ar Meistaru. Un turpmāk, ievērojot skaidrus norādījumus, pat iesācējs lietotājs var viegli izveidot pieprasījumu. Iepazīsimies ar tās šķirnēm.

Vienkāršs pieprasījums

Šis izklājlapu rīks apkopo nepieciešamos datus no lietotāja norādītajiem laukiem. Nosaukums vien liecina, ka šis ir vispopulārākais pieprasījuma veids iesācējiem. Tās ērtības slēpjas faktā, ka šī procedūra tiek atvērta jaunā cilnē. Tāpēc atbilde uz jautājumu, kā izveidot vaicājumu programmā Access 2010, kļūst acīmredzama pēc pirmās vedņa izvēlnes atvēršanas.

Šķērspieprasījums

Šis paraugu ņemšanas veids ir sarežģītāks. Lai noskaidrotu, kā izveidot šķērsvaicājumu programmā Access, izmantojot “vedni” šajā režīmā, pirmajā logā jānoklikšķina uz šīs funkcijas.

Ekrānā parādīsies tabula, kurā varēsit atlasīt līdz trim kolonnām, kas atrodas oriģinālā.

Vienu no atlikušajiem neatlasītajiem laukiem var izmantot kā vaicājumu tabulas galvenes. Procedūras trešajā posmā (krustojumā) ar mainīguma funkciju tiek izvēlēta cita vērtība (vidējā vērtība, summa, pirmā, pēdējā).

Fotoattēls parāda, ka ir izveidots savstarpējais pieprasījums, un tas dotie parametri ir veiktas nepieciešamās darbības.

Ierakstu dublikāti

Kā norāda nosaukums, šī vaicājuma galvenais mērķis ir atlasīt visas identiskās rindas tabulā atbilstoši norādītajiem parametriem. Tas izskatās šādi:

Turklāt varat atlasīt papildu laukus, lai vienlaikus atbilstu vairākām rindām.

Lai atlasītu dublētus ierakstus, jums ir jāpaplašina pieprasījumu saraksts un jāizveido tur jauna mape. Pēc tam logā “Jauns vaicājums” atlasiet rindu “Meklēt ierakstu dublikātus”. Tālāk jums jāievēro Meistara norādījumi.

Ieraksti bez padotajiem

Šis ir pēdējais vaicājuma veids, kas pieejams režīmā Galvenais — ieraksti bez vergu.

Šajā gadījumā tiek atlasītas tikai tās vērtības, kas nav iesaistītas nevienā tabulu un vaicājumu laukā, bet kuras jau ir izveidotas.

Šis veids ir aktuāls tikai gadījumos, kad ir vairākas datu bāzes.

Visi četri šie vaicājumu veidi ir sākumpunkts darbam ar sarežģītiem elementiem, taču tie ļauj viegli saprast, kā izveidot vaicājumu datu bāzē. Piekļūstiet datiem.

Vaicājuma funkcijas programmā MS Access

Noskaidrosim, kāpēc jums ir jāveic iepriekš aprakstītās darbības. Uzdevums visu vienkāršu un sarežģīti vaicājumi V Piekļūstiet DBVS ir šāds:

  • Nepieciešamo datu apkopošana tabulās, pēc tam apskate, rediģēšana, jaunu vērtību pievienošana.
  • Lielisks izejmateriāls visu veidu atskaites veidlapu sagatavošanai.
  • Matemātiskās un statistiskās skaitīšanas procedūru veikšana uz veseliem datu masīviem ar rezultātiem, kas tiek parādīti ekrānā (vidējā vērtība, summa, novirze, kopsummas).

Pieprasījuma paraugs

Šāda veida datu bāzes darbs ir sarežģīts, jo tas prasa vairāku tabulu līdzdalību.

Ir nepieciešams, lai visās tabulās būtu kopīgi atslēgas lauki. Pretējā gadījumā operācija nebūs iespējama.

Apskatīsim, kā programmā Access izveidot atlases vaicājumu. Vispirms jums ir jāizveido vienkāršs vaicājums ar nepieciešamo lauku atlasi. Šeit varat rediģēt datus, lai tie nonāktu vajadzīgajā formā. Starp citu, veiktās izmaiņas tiks pārnestas uz avota tabulām, tāpēc šis punkts ir jāņem vērā.

Atvērtajā dizainera logā tiek aizpildīts logs “Pievienot tabulas”. Šeit jums jāpievieno tās tabulas vai vaicājumi, no kuriem jāizņem sākotnējās vērtības.

Pēc pievienošanas varat sākt aizpildīt pieprasījuma nosacījumus. Šim nolūkam mums ir nepieciešama virkne "Lauks". Tajā jums ir jāizvēlas tās vērtības no tabulām, kas tiks parādītas pieprasījuma laikā.

Lai pabeigtu darbību, jums jānoklikšķina uz pogas “Palaist”.

Pieprasījums ar parametriem

Šī ir cita veida sarežģīta procedūra, kas lietotājam prasīs noteiktas datubāzes prasmes. Viena no šīs akcijas galvenajām jomām ir gatavošanās atskaišu veidošanai ar liela mēroga datiem, kā arī apkopojošu rezultātu iegūšana. Tālāk tiks apspriests, kā programmā Access 2007 izveidot vaicājumus, izmantojot noformētāju.

Šī datu izlases procedūra ir jāsāk, izveidojot vienkāršu vaicājumu, lai atlasītu nepieciešamos laukus. Pēc tam, izmantojot Designer režīmu, jums jāaizpilda lauks “Atlases nosacījums”, un, pamatojoties uz ievadīto vērtību, atlase tiks veikta.

Tādējādi uz jautājumu, kā izveidot vaicājumu ar parametru programmā Access, atbilde ir vienkārša - ievadiet atlases sākotnējos parametrus. Lai strādātu ar noformētāju, jāizmanto vaicājumu vednis. Tur tiek izveidoti primārie dati filtrēšanai, kas kalpo par pamatu turpmākajam darbam.

Izvērstais krusteniskais vaicājums

Mēs turpinām sarežģīt situāciju. Vēl grūtāk saprotama ir informācija par to, kā programmā Access izveidot vaicājumus, ja ir vairākas datu tabulas. Šķērspieprasījums jau tika apspriests iepriekš kā viena no iespējām darbam ar meistaru. Tomēr līdzīgu pieprasījumu varat izveidot dizaina režīmā.

Lai to izdarītu, noklikšķiniet uz “Vaicājumu veidotājs” - “Krusts”.

Tiek atvērta izvēlne avota tabulu pievienošanai, kā arī iespēja aizpildīt atlasītos laukus. Vienīgais, kam vajadzētu pievērst uzmanību, ir vienumi “grupas darbība” un “šķērstabula”. Tie ir jāaizpilda pareizi, pretējā gadījumā procedūra netiks pabeigta pareizi.

Šķērsvaicājumi ir vienkāršākais veids, kā meklēt un izgūt informāciju no vairākiem datu avotiem, kā arī iespēja ģenerēt diagrammas un diagrammas.

Turklāt, izmantojot šo procedūru, meklēšana tiek pabeigta ātrāk, pat ar vairākām izstrādes iespējām.

Protams, ir arī nepilnības, kas var traucēt jūsu darbam. Piemēram, veidojot vaicājumu datu bāzes kārtošanai pēc kolonnu vērtībām, sistēma ģenerē kļūdu. Tas ir, ir pieejama tikai šķirošana pēc standarta vienumiem - “augošā un dilstošā”.

Apkopojot, jāsaka, ka lietotājam ir jāizlemj, kā izveidot vaicājumus programmā Access - izmantojot vedni vai noformētāju. Lai gan lielākajai daļai cilvēku, kas izmanto MS Access DBVS, pirmā iespēja ir piemērotāka. Galu galā vednis visu darbu veiks pats, lietotājam atstājot tikai dažus peles klikšķus, lai izvēlētos pieprasījuma nosacījumus.

Lai izmantotu papildu iestatījumus, noteikti ir nepieciešama profesionāla līmeņa datubāzes pieredze. Ja darbā ir iesaistītas lielas datu bāzes, vislabāk ir sazināties ar speciālistiem, lai izvairītos no DBVS darbības traucējumiem un iespējamiem datu zudumiem.

Ir viens punkts, kas ir pieejams tikai programmētājiem. Tā kā DBVS galvenā valoda ir SQL, vēlamo vaicājumu var ierakstīt programmas koda formā. Lai strādātu šajā režīmā, vienkārši noklikšķiniet uz jau izveidotā pieprasījuma rindas un atvērtajā konteksta izvēlne atlasiet "SQL režīms".

Vienkāršākajā gadījumā vaicājums realizē atlasi no vienas tabulas ar nepieciešamajiem laukiem, ierakstiem, kas atbilst norādītajiem atlases nosacījumiem, un vaicājuma rezultātu apskati.

Atlases vaicājumu konstruēšana ar atlases nosacījumiem

Apskatīsim atlases vaicājumus programmā Access, izmantojot informācijas izguves piemēru no Preču piegādes datu bāzes tabulas PRODUCT.

1. problēma. Pieņemsim, ka pēc nosaukuma ir jāizvēlas vairākas produkta īpašības.

  1. Lai datu bāzes logā izveidotu vaicājumu, atlasiet lentes cilni - Radīšana(Izveidot) un grupā Pieprasījumi(Vaicājumi) noklikšķiniet uz pogas Vaicājumu veidotājs(Vaicājuma dizains). Dizaina režīmā tiks atvērts tukšs atlases pieprasījuma logs - PieprasījumsN(QueryN) un dialoglodziņu Tabulas pievienošana(Rādīt tabulu) (4.2. att.).
  2. Logā Tabulas pievienošana(Rādīt tabulu) atlasiet tabulu PRODUCT un noklikšķiniet uz pogas Pievienot(Pievienot). Atlasītā tabula tiks parādīta vaicājuma datu shēmas apgabalā. Aizvērt logu Tabulas pievienošana(Rādīt tabulu), nospiežot pogu Aizvērt(Aizvērt).

Vaicājumu noformētāja logā veikto darbību rezultātā (4.1. att.) augšējais panelis Parādās vaicājuma datu shēma, kurā ir iekļautas vaicājumam atlasītās tabulas. Šajā gadījumā viena tabula PRODUCT. Tabulu attēlo lauku saraksts. Pirmā rinda tabulas lauku sarakstā, kas atzīmēta ar zvaigznīti (*), apzīmē visu tabulas lauku kopu. Apakšējais panelis ir pieprasījuma veidlapa, kas ir jāaizpilda.

Turklāt lentē parādās un automātiski tiek aktivizēta jauna cilne (Vaicājuma rīki | Dizains) (daļa no šīs cilnes parādīta 4.3. att.), uz kuras ar krāsu tiek izcelts izveidotā vaicājuma veids - Paraugs(Atlasīt). Tāpēc pēc noklusējuma atlases vaicājums vienmēr tiek izveidots. Šīs cilnes komandas nodrošina izpildes rīkus nepieciešamās darbības veidojot pieprasījumu. Šī cilne tiek atvērta, kad veidojat a jauns pieprasījums vai esošs tiek rediģēts.

  1. Lai noņemtu jebkuru tabulu no vaicājuma datu shēmas, novietojiet uz tās peles kursoru un nospiediet taustiņu. Lai pievienotu - noklikšķiniet uz pogas Rādīt tabulu(Rādīt tabulu) grupā Vaicājuma iestatīšana(Vaicājuma iestatīšana) cilne Darbs ar pieprasījumiem | Konstruktors(Vaicājuma rīki | Dizains) vai palaidiet komandu Pievienojiet tabulu(Rādīt tabulu) konteksta izvēlnē aicināja pieprasījuma datu diagrammu.
  2. Noformētāja logā (4.4. att.) secīgi velciet laukus NOSAUKUMS_IT, CENA, PIEEJAMĪBA_IT no tabulas PRODUCT lauku saraksta pieprasījuma formas kolonnās uz rindu. Lauks(Lauks).
  3. Lai attiecīgajās vaicājuma kolonnās iekļautu vajadzīgos laukus no tabulas, varat izmantot šādas metodes:
    • pieprasījuma veidlapas pirmajā rindā Lauks(Lauks) noklikšķiniet ar peli, lai parādītos saraksta poga, un atlasiet vajadzīgo lauku no saraksta. Sarakstā ir vaicājuma datu shēmā attēloto tabulu lauki;
    • veiciet dubultklikšķi uz tabulas lauka nosaukuma vaicājuma datu shēmā;
    • Lai iekļautu visus tabulas laukus, vaicājuma datu shēmā tabulas lauku sarakstā varat vilkt vai dubultklikšķi uz simbola * (zvaigznīte).
  4. Ja nejauši ievilkāt nevajadzīgu lauku pieprasījuma veidlapā, izdzēsiet to. Lai to izdarītu, pārvietojiet kursoru uz kolonnas etiķetes apgabalu augšpusē, kur tas parādīsies kā melna bultiņa, kas vērsta uz leju, un noklikšķiniet uz peles pogas. Kolonna tiks iezīmēta. Nospiediet taustiņu vai izpildiet komandu Noņemt kolonnas(Dzēst kolonnas) grupā Vaicājuma iestatīšana(Vaicājuma iestatīšana).
  5. Rindā Izvade uz displeja(Rādīt) pārbaudiet laukus, pretējā gadījumā tie netiks iekļauti vaicājuma tabulā.
  6. Uzrakstiet uz līnijas Atlases nosacījumi(kritēriju) produkta nosaukums, kā parādīts pieprasījuma veidlapā attēlā. 4.4. Tā kā izteiksme atlases nosacījumā nesatur operatoru, pēc noklusējuma tiek izmantots operators =. Izmanto izteiksmē teksta vērtība tiek ievadīts dubultpēdiņās, kuras tiek pievienotas automātiski.
  7. Palaidiet vaicājumu, grupā Rezultāti noklikšķinot uz pogas Izpildīt vai uz pogas Skatīt. Tabulas režīmā ekrānā parādīsies vaicājuma logs ar ierakstu no tabulas PRODUCT, kas atbilst norādītajiem atlases nosacījumiem.

KOMENTĀRS
Vaicājuma logs tabulas skatā ir līdzīgs datu bāzes tabulas skata logam. Izmantojot dažas vaicājumu tabulas, var veikt izmaiņas vaicājuma pamatā esošās bāzes tabulas datos. Vaicājumam, kas tiek skatīts datu lapas skatā, atšķirībā no Access 2010 datu bāzes tabulas, nav kolonnas Noklikšķiniet, lai pievienotu(Noklikšķiniet, lai pievienotu), kas paredzēts, lai mainītu tabulas struktūru. Šajā režīmā lentes cilnē mājas(Sākums) ir pieejamas tās pašas pogas, kas atverot datu bāzes tabulu.

  1. Ja, ievadot sarežģītu produkta nosaukumu, esat pieļāvis neprecizitāti, produkts netiks atrasts tabulā. Izmantojot aizstājējzīmes operatorus - zvaigznīti (*) un jautājuma zīmi (?) (ANSI-89 standarts, izmanto noklusējuma vaicājumiem) vai procentu zīmi (%) un pasvītrojumu (_) (ANSI-92, ieteicams kā SQL Server standarts) , vienkāršo nepieciešamo virkņu meklēšanu un izvairās no daudzām kļūdām. Pilna produkta nosaukuma vietā ievadiet Corpus* vai Corpus%. Aizpildiet pieprasījumu. Ja preces nosaukuma laukā viena vērtība sākas ar vārdu “Case”, pieprasījuma rezultāts būs tāds pats kā iepriekšējā gadījumā. Pēc vaicājuma izpildes ievadītā izteiksme tiks papildināta ar operatoru Like “Body*”. Šis operators ļauj izmantot aizstājējzīmes, veicot meklēšanu teksta laukos.
  2. Ja jums ir jāatrod vairāki produkti, izmantojiet operatoru In. Tas ļauj pārbaudīt vienlīdzību ar jebkuru vērtību no saraksta, kas norādīts iekavās. Ierakstiet izvēles nosacījumu rindā (“MiniTower case”; “HDD Maxtor 20GB”; “FDD 3.5″). Vaicājumu tabulā tiks parādītas trīs rindas. Paziņojumā In nav atļautas aizstājējzīmes.
  3. Saglabājiet pieprasījumu, noklikšķinot uz cilnes Fails(Fails) un izpildiet komandu Saglabāt(Saglabāt). Logā Saglabāšana(Saglabāt kā) ievadiet pieprasījuma nosaukumu Piemērs1. Ņemiet vērā, ka vaicājuma nosaukumam nevajadzētu sakrist ne tikai ar esošo vaicājumu nosaukumiem, bet arī ar datu bāzē esošo tabulu nosaukumiem.
  4. Aizveriet pašreizējo pieprasījumu, izmantojot konteksta izvēlnes komandu Aizvērt(Aizvērt) vai noklikšķinot uz vaicājuma loga pogas Aizvērt(Aizvērt).
  5. Izpildi saglabātu vaicājumu, navigācijas rūtī iezīmējot vaicājumu un konteksta izvēlnē atlasot komandu Atvērt(Atvērts).
  6. Lai rediģētu pieprasījumu, atlasiet to navigācijas apgabalā un izpildiet komandu konteksta izvēlnē Konstruktors(Dizaina skats).

2. uzdevums. Pieņemsim, ka jums ir jāizvēlas preces, kuru cena ir ne vairāk kā 1000 rubļu, un PVN ir ne vairāk kā 10%, kā arī jāizvēlas preces, kuru cena ir lielāka par 2500 rubļiem. Rezultātā jānorāda preces nosaukums (NAIM_TOV), tā cena (PRICE) un PVN (RATE_VAT).

  1. Izveidojiet jaunu vaicājumu noformēšanas režīmā, pievienojiet tabulu PRODUCT. Noformētāja logā (4.5. att.) secīgi velciet laukus NOSAUKUMS_IT, CENA, LIKMES_PVN no tabulas PRODUCT lauku saraksta uz pieprasījuma formu.
  2. Pierakstīt Atlases nosacījumi(kritēriji), kā parādīts pieprasījuma veidlapā attēlā. 4.5. Loģiska UN darbība tiek veikta starp nosacījumiem, kas rakstīti tajā pašā rindā. Loģiska VAI operācija tiek veikta starp nosacījumiem, kas rakstīti dažādās rindās.
  3. Aizpildiet pieprasījumu, noklikšķiniet uz pogas Izpildīt(Skrien) grupā rezultātus(Rezultāti). Tabulas režīmā ekrānā parādīsies vaicājuma logs ar ierakstiem no tabulas PRODUCT, kas atbilst norādītajiem atlases nosacījumiem.
  4. Saglabājiet pieprasījumu, izpildot atbilstošo komandu pieprasījuma konteksta izvēlnē, kas tiek izsaukta, novietojot kursoru uz pieprasījuma galvenes. Piešķiriet tai nosaukumu Piemērs2.

3. problēma. Pieņemsim, ka mums ir jāatlasa visi konkrētā perioda rēķini. Rezultātā jānorāda rēķina numurs (NOM_NAK), noliktavas kods (CODE_SC), nosūtīšanas datums (DATE_SHIP) un nosūtītās preces kopējās izmaksas (SUMMA_INKL).

  1. Izveidojiet jaunu vaicājumu noformējuma skatā, pievienojiet tabulu RĒĶINS. Noformētāja logā secīgi velciet visus nepieciešamos laukus no tabulas INVOICE lauku saraksta uz pieprasījuma formu.
  2. Laukam DATE_OTGR rindā Atlases nosacījumi(Kritēriji) ierakstiet starp #01/11/2008# un #03/31/2008#. Operators Between norāda datuma intervālu (ANSI-92 tā vietā tiek izmantota zīme # atsevišķi pēdiņas‘). Turklāt šis operators ļauj norādīt skaitliskās vērtības intervālu.

Lai to pastiprinātu, noskatieties video pamācību:

Programmā MS Access varat izveidot datu bāzes, tabulas, veidlapas un citus pārskatus. Šis raksts palīdzēs lietotājam palaist SQL vaicājumus programmā MS Access. Varat palaist tos pašus vaicājumus, kas tiek izmantoti SQL, lai izgūtu datus no datu bāzes. Šis raksts ir paredzēts lietotājiem, kuri tikko sākuši apgūt MS Access un vēlas palaist SQL vaicājumus programmā MS Access. Vienīgais nosacījums, kas ir nepieciešams pirms darba sākšanas, ir piekļuve organizācijā izmantotajai datubāzei.

Soļi


Kas jums būs nepieciešams

  • Lietotājam ir jābūt piekļuvei organizācijas datubāzei
  • Lietotājs var sazināties ar tehnoloģiju atbalstu pirms vaicājumu izpildes, izmantojot MS Access

Raksta informācija

Šī lapa ir tikusi apskatīta 4443 reizes.

Vai šis raksts bija noderīgs?

Piekļūstiet DBVS

Microsoft Access ir relāciju tipa DBVS, kurā ir visi raksturīgie rīki un iespējas modernas sistēmas datu bāzes pārvaldība. Relāciju datu bāze ļauj vieglāk atrast, analizēt, uzturēt un aizsargāt datus, jo tie tiek glabāti vienuviet. Piekļuve tulkojumā no angļu valodas nozīmē "piekļuve". MS Access ir viena no jaudīgākajām, elastīgākajām un vienkāršākajām DBVS. Tajā var izveidot lielāko daļu aplikāciju, neuzrakstot nevienu programmas rindiņu, bet, ja nepieciešams izveidot kaut ko ļoti sarežģītu, tad MS Access nodrošina jaudīgu programmēšanas valodu – Visual Basic Application.

Microsoft Access DBVS popularitāte ir saistīta ar šādiem iemesliem:

Pieejamība un skaidrība ļauj Access būt vienai no labākās sistēmasātri izveidot datu bāzes pārvaldības lietojumprogrammas;

Iespēja izmantot OLE tehnoloģiju;

Integrācija ar Microsoft pakotne Birojs;

Pilns Web tehnoloģiju atbalsts;

Vizuālās tehnoloģijas ļauj pastāvīgi redzēt savu darbību rezultātus un tos labot;

Liela “meistaru” komplekta pieejamība objektu izstrādei.

Galvenie objektu veidi, ar kuriem programma strādā, ir: tabula, vaicājums, forma, atskaite, lapa, makro, modulis.

Tabula ir objekts, ko izmanto datu glabāšanai. Katrā tabulā ir iekļauta informācija par noteikta veida objektu. Tabulā ir lauki (kolonnas), kuros glabājas dažāda veida dati, un ieraksti (rindas). Katrai tabulai ir jābūt definētai primārajai atslēgai (vienam laukam ar unikālu vērtību katram ierakstam vai vairākiem laukiem, kuru kopējā vērtība katram ierakstam ir unikāla), kas ir unikāls identifikators katram ierakstam tabulā.

Lai palielinātu datu piekļuves ātrumu, atsevišķus tabulas laukus (vai to kopu) var deklarēt par indeksiem. Indekss ir rīks, kas paātrina meklēšanu un kārtošanu tabulā, izmantojot galvenās vērtības, lai nodrošinātu tabulas rindu unikalitāti. Tabulas primārā atslēga tiek automātiski indeksēta. Nav atļauts izveidot indeksus laukos ar dažiem datu tipiem.

Vaicājums ir objekts, kas ļauj lietotājam izgūt vēlamos datus no vienas vai vairākām tabulām. Vaicājumi var arī izveidot jaunas tabulas, izmantojot datus no vienas vai vairākām jau esošām tabulām. Visizplatītākais vaicājuma veids ir ieneses vaicājums. Atlasīšanas vaicājums atlasa datus no vienas vai vairākām tabulām, pamatojoties uz noteiktiem nosacījumiem, un pēc tam parāda tos vēlamajā secībā.

Veidlapa ir objekts, kas galvenokārt paredzēts datu ievadīšanai, parādīšanai ekrānā vai lietojumprogrammas darbības kontrolei.

Pārskats ir objekts, kas paredzēts, lai izveidotu dokumentu, ko pēc tam var izdrukāt vai iekļaut dokumentā citā lietojumprogrammā.

vizuālās attīstības programmēšanas bāze

Lapa — tiek izmantota, lai piekļūtu datiem pašreizējā Access datu bāzē.

Makro ir objekts, kas ir vienas vai vairāku darbību strukturēts apraksts, kas Access jāveic, reaģējot uz konkrētu notikumu.

Modulis ir objekts, kurā ir Microsoft Visual Basic programmas, kas ļauj sadalīt procesu mazākās darbībās un atklāt kļūdas, kuras nevarēja atrast, izmantojot makro.

DBVS tiek palaista no Sākt — Programmas — Microsoft Access. Izpildiet komandu Fails - Jauns.

Interfeiss darbam ar datu bāzes objektiem ir vienots. Katram no tiem ir paredzēti standarta darbības režīmi: Izveidot (objekta struktūras izveide); Konstruktors (objektu struktūras maiņa); Atvērt (View, Run - paredzēts darbam ar datu bāzes objektiem).

SQL vaicājumu valoda

SQL (strukturētā vaicājuma valoda) kopš 1986. gada. ir standarta relāciju datu bāzes valoda. Jo īpaši to izmanto Access un Excel lietojumprogrammās.

SQL ir informatīvi loģiska valoda, kas paredzēta saglabāto datu aprakstīšanai, saglabāto datu izgūšanai un datu modificēšanai. Sākotnēji SQL bija galvenais veids, kā lietotājs strādāja ar datu bāzi, un tas bija neliels komandu (operatoru) kopums, kas ļāva izveidot tabulas, pievienot tabulām jaunus ierakstus, izgūt ierakstus no tabulām, dzēst ierakstus un mainīt tabulu struktūras. Tā kā SQL ir kļuvusi sarežģītāka, tā ir kļuvusi par vairāk uz lietojumprogrammām orientētu programmēšanas valodu, un lietotāji tagad var izmantot vizuālo vaicājumu veidotājus.

SQL valoda ir operatoru kolekcija:

Datu definīcijas valodas (DDL) operatori;

datu manipulācijas operatori (Data Manipulation Language, DML);

datu piekļuves definīciju operatori (Data Control Language, DCL);

Transaction Control Language (TCL) operatori.

Vaicājumi programmā MS Access tiek saglabāti un ieviesti, izmantojot SQL valodu. Lai gan lielāko daļu vaicājumu var izveidot grafiski (modeļu vaicājumi), tie tiek saglabāti kā SQL priekšraksti. Dažos gadījumos (piemēram, apakšvaicājumos) varat izmantot tikai SQL.

SQL ir neprocedūra valoda. Tas vienkārši deklarē, kas ir jādara, un izpilde tiek atstāta DBVS (datu bāzes pārvaldības sistēma) ziņā.

SQL izmanto trīs vērtību loģiku. Kopā ar tradicionālajām Būla vērtībām TRUE un FALSE tiek izmantota NULL (UNKNOWN vai NAV DATU).

Darbības tiek veiktas ar veselām datu kopām, nevis atsevišķiem elementiem, kā tas ir citās programmēšanas valodās.

SQL vaicājums sastāv no priekšrakstiem. Katrā instrukcijā var būt vairāki teikumi.




Tops