Hvordan gjøre et valg i tilgang. Hvordan lage spørringer i Access: trinnvise instruksjoner og anbefalinger. Bruk denne tilstanden

Når du oppretter spørringer, er det viktig å formulere betingelsene for å velge poster fra databasen riktig. Følgende funksjoner er tilgjengelige i MS Access:

· enkelt prøvetakingskriterium;

· eksakt avvik mellom verdiene til ett felt;

· unøyaktig samsvar mellom feltverdier;

· valg etter verdiområde;

· kombinere kriterier fra flere felt;

· valgbetingelse for resultater av endelige beregninger.

Enkelt prøvetakingskriterium . Poster velges basert på samsvarende feltverdier. For eksempel fra felten By du må velge verdiene Minsk. For å gjøre dette, i forespørselsskjemaet i linjen Utvalgsbetingelse i kolonnen By verdien angis fra tastaturet "Minsk".

Nøyaktig avvik mellom verdiene til ett felt. Alle poster velges fra databasen, bortsett fra de som det er angitt en betingelse for. For eksempel må du velge alle poster med feltet By, bortsett fra de som har en verdi i dette feltet Minsk. For å gjøre dette, i linjen Utvalgsbetingelser i kolonnen By uttrykket legges inn Ikke "Minsk" eller <>"Minsk". Logisk operatør Ikke ekskluderer oppføringer med verdi Minsk, sammenligningsoperatør<>betyr "ikke like".

Ueksakt samsvar med feltverdier. Denne betingelsen kan settes hvis feltverdiene ikke er kjent. Sammenligningsoperatoren brukes til prøvetaking Som(som). Ved siden av operatøren skrives et mønster som inneholder eller den nøyaktige verdien, for eksempel, Som "Petrov", eller inkludert jokertegn, f.eks. Som "Pet*".

Access tillater følgende jokertegn:

? - et hvilket som helst tegn;

* - null eller flere tegn;

#- ethvert siffer;

[liste over tegn] - et hvilket som helst tegn i listen over tegn;

[!liste over tegn] - et hvilket som helst tegn som ikke er inkludert i listen.

I tillegg til listen over tegn, kan hakeparenteser omslutte en rekke tegn, for eksempel [B-R]. [b-rB-R]-betingelsen lar deg velge både store og store bokstaver.

Gitt at Som «[BR]*» Alle etternavn som begynner med B eller R er valgt.

Velg etter verdiområde. For å angi et verdiområde, brukes følgende operatorer:

> (mer),

>= (ikke mindre enn, større enn eller lik),

< (mindre ),

<= (ikke mer enn, mindre enn eller lik) (for eksempel >= 10).

Mellom ... og ... (brukes til å sjekke om det tilhører et område, hvis øvre og nedre grenser er koblet sammen med den logiske operatoren AND (for eksempel mellom 1990 og 1995).

Operatorer kan brukes med tekst-, numeriske og datofelt.

Kombinere kriterier for ett felt. Hvis mer enn én betingelse er pålagt ett felt, kan betingede uttrykk kobles sammen ved hjelp av operatorer Eller (ELLER) Og Og(OG).

Kombinere kriterier fra flere felt. En forespørsel kan inneholde flere utvalgsbetingelser. I dette tilfellet er det to alternativer for å velge poster:

en post velges bare hvis alle betingelser er oppfylt, som tilsvarer en logisk operasjon OG. Forespørselen kalles Og-spør;

en post velges når minst én betingelse er oppfylt, som tilsvarer en logisk operasjon ELLER. Forespørselen kalles ELLER-spørring.

Ved bygging ELLER-spørring Hver betingelse som inngår i kriteriet bør plasseres på en egen linje. Ved bygging Jeg spør Hvert vilkår som inngår i kriteriet må være plassert på én linje.

I endelige spørsmål Det finnes to typer postutvelgelseskriterier.

Den første typen eliminerer poster som ikke oppfyller kriteriene før de endelige beregningene utføres. Den andre typen kriterier brukes på resultatet av de endelige beregningene.

Skjemaer

MS Access lager skjemaer ved hjelp av flere verktøy: Form, Split Form, Multiple Elements, Form Wizard, Blank Form, Form Builder.

Skjema. Når du bruker dette verktøyet, plasseres alle feltene i den underliggende datakilden på skjemaet. Skjemaet viser kun én oppføring og lar deg se andre oppføringer.

Hvis MS Access oppdager en enkelt tabell som er relatert i et en-til-mange-forhold til tabellen eller spørringen som ble brukt til å lage skjemaet, legger MS Access til en tabell med data til skjemaet basert på den relaterte tabellen eller spørringen. For eksempel hvis du oppretter Enkel form, basert på "Ansatte"-tabellen, og mellom "Ansatte" og " Lønn Hvis en "en-til-mange"-relasjon er definert, vil datatabellen vise alle poster i "Lønn"-tabellen relatert til gjeldende ansattpost. Hvis du ikke trenger en datatabell i et skjema, kan du slette den. Hvis det er flere tabeller som har en en-til-mange-relasjon med tabellen som ble brukt til å opprette skjemaet, blir ikke tabelldataene lagt til i skjemaet.

Delt form– lar deg vise data i to visninger samtidig – i skjemamodus og i tabellmodus.

Disse to visningene er koblet til samme datakilde og er alltid synkronisert med hverandre. Når du velger et felt i en del av skjemaet, velges det samme feltet i en annen del. Data kan legges til, endres eller slettes i alle deler av skjemaet (så lenge postkilden tillater oppdatering og skjemainnstillingene ikke forbyr slike handlinger).

Å jobbe med et delt skjema gir deg fordelene med begge typer skjema i ett skjema. Du kan for eksempel bruke tabelldel skjemaer for raskt å finne en post, og deretter vise eller redigere posten i en annen del av skjemaet.

Flere elementer. Laget form ser ut som et bord. Data er ordnet i rader og kolonner, og flere poster vises samtidig. Du kan legge til i dette skjemaet grafiske elementer, knapper og andre kontroller.

Master of Forms. Gir større frihet til å velge feltene som vises på skjemaet. Veiviseren lar deg spesifisere hvordan data grupperes og sorteres, og også inkludere felt fra flere tabeller eller spørringer i skjemaet, forutsatt at relasjonene mellom disse tabellene og spørringene er forhåndsdefinert.

Tomt skjema. Brukes til raskt å bygge et skjema med et lite antall felt. MS Access åpner et tomt skjema og viser et område samtidig Liste over felt, hvorfra de nødvendige feltene velges ved å dobbeltklikke eller dra.

Form designer. Datakilden for et skjema kan bare være én tabell eller spørring. Den strukturelle hovedenheten til skjemaet brukeren plasserer datafelt i er Dataområde, synlig på skjermen som standard. Andre strukturelle deler av skjemaet inkluderer: skjematittel, topptekst, bunntekst, skjemanotat, som kalles til skjermen av brukeren.

Datafelt fra datakilden plasseres i dataområdet ved hjelp av et vindu Liste over felt, samt beregnede felt som ikke finnes i datakilden (opprettet kun i båndvisningsskjemaet). Uttrykk for beregnede felt skrives vha Uttrykksbygger.

Form design verktøy er kontroller. Den mest brukte kontrollen er feltet. Andre kontroller inkluderer: etiketter, avmerkingsbokser, kontroller av underskjemaer og rapporter og andre. En feltkontroll kan være vedlagt, gratis eller beregnet.

· Vedlagt kontroll– en kontroll hvis datakilde er en tabell eller et spørrefelt. Den vedlagte kontrollen dannes ved hjelp av et vindu Liste over felt og tjener til å vise verdiene til datakildefeltene. Dette den beste måten opprette en vedlagt kontroll av to grunner:

· En vedlagt kontroll har en etikett knyttet til seg, som som standard er feltnavnet (eller en etikett definert som en egenskap for det feltet i datakilden), så det er ikke nødvendig å skrive inn signaturtekst.

· den vedlagte kontrollen arver verdiene til datakildefeltegenskapene, for eksempel, Format, Antall desimaler, Inndatamaske.

· Fri kontroll– en kontroll som ikke har en datakilde. Gratis kontroller brukes til å vise tekst, linjer, rektangler og bilder. Et eksempel på et gratis element er Inskripsjon.

· Beregnede kontroller– en kontroll hvis datakilde er et uttrykk i stedet for et felt.

MS Access-designeren lar deg lage skjemaer med et underskjema. En underordnet form er en form som settes inn i en annen form, kalt hovedformen, for å få tilleggsinformasjon fra et annet bord. Lag først et underskjema, deretter et hovedskjema, og plasser deretter underskjemaet i hovedskjemaet. Flere nivåer av underordning av skjemaer er tillatt.

Bruk layout- og designmodus for å redigere skjemaer.

Layout-modus Layout-modus er den mest intuitive modusen for å endre former. Den kan brukes til å gjøre nesten alle endringer i skjemaet: justere data, angi størrelsen på kontroller, design utseende skjemaer. I denne modusen kan du også endre strukturen til skjemaet, for eksempel justere størrelsen på feltene i samsvar med dataene som vises på skjermen.

Designmodus Designvisning lar deg se skjemaets struktur mer detaljert. Du kan se topp- og bunntekstdelene i skjemaet. I denne modusen kjører ikke skjemaet, så du kan ikke se de underliggende dataene når du gjør endringer. Det er imidlertid mer praktisk å gjøre annet arbeid i designmodus:

· legge til i skjemaet ulike elementer kontroller som etiketter, bilder, linjer og rektangler.

· endre kilden til en feltkontroll direkte i feltet uten å bruke egenskapsvinduet.

· endre størrelsen på skjemaseksjoner, for eksempel skjemaoverskriften eller dataområdet.

· endre skjemaegenskaper som ikke kan endres i layoutmodus (f.eks. Standardvisning eller Skjemamodus).

Rapporter

En rapport er MS Access-hovedobjektet designet for å skrive ut data fra tabeller og spørringer. I rapporter organiserer MS Access som regel data i grupper og beregner både generelle og mellomliggende resultater. I tillegg til data inneholder rapporten informasjon om rapportoppsettet: bildetekster, overskrifter, bilder og annen informasjon.

MS Access-applikasjonen lager rapporter ved hjelp av følgende verktøy: rapport, rapportveiviser, tom rapport, rapportdesigner.

Rapportere. MED det meste rask måte opprette en rapport, siden rapporten genereres uten å be om tilleggsinformasjon. Rapporten inkluderer alle poster for datakilden - tabell eller spørring. Du kan redigere rapporten i layout- eller designvisning etter behov. Hver gang du åpner rapporten, viser den den faktiske dette øyeblikket poster fra datakilden.

Rapportveiviser. Genererer en rapport interaktivt, og gir brukeren muligheten til å legge til felt fra flere tabeller eller spørringer i rapporten, hvis relasjonene mellom disse tabellene og spørringene er definert på forhånd. Du kan angi hvordan data skal grupperes og sorteres.

Ved å forhåndsvise rapporten i forskjellige skalaer kan du se hvordan rapporten vil se ut når den skrives ut.

MS Access-applikasjonen har et verktøy Klistremerkemester, som hjelper deg med å lage klistremerker i de fleste standardstørrelser. Postkilden for etiketter er en tabell eller spørring.

Tom rapport. Brukes til raskt å lage en rapport med et lite antall felt. MS Access åpner en tom rapport. Samtidig vises et område på høyre side av vinduet Liste over felt, hvorfra du må dobbeltklikke eller dra og slippe de nødvendige feltene.

Bruke verktøyene presentert i gruppen Kontroller på fanen Formatering, kan du legge til en firmalogo, tittel, sidetall, dato og klokkeslett i rapporten.

Rapportdesigner. Rapportstrukturen, som skjemastrukturen, har flere seksjoner: Rapportoverskrift, Topptekst, Gruppetopptekst, Dataområde, Gruppemerknad, Bunntekst, Rapportnotat.

· Rapporttittel. Tjener til å plassere rapporttittelen. Tittelen inkluderer firmalogoen, rapporttittelen eller datoen. Hvis du plasserer en beregnet kontroll som bruker en aggregeringsfunksjon i rapportoverskriften Sum, beregnes beløpet for hele rapporten. Rapporttittelen skrives ut før overskriften kun én gang i begynnelsen av rapporten.

· Sideoverskrift. Brukes til å plassere kolonnenavn i tabellrapporter. Trykket øverst på hver side.

· Gruppetittel. Inneholder navnet på gruppen og skrives ut før hver ny gruppe poster. Hvis du plasserer en beregnet kontroll som bruker en aggregeringsfunksjon i gruppeoverskriften Sum, vil beløpet bli beregnet for gjeldende gruppe.

Dataområde. Designet for å plassere datafelt fra en datakilde ved hjelp av et vindu Liste over felt. Seksjonen oppretter også beregnede felt som ikke finnes i datakilden. Teknologiene for å inkludere felt i dataområdet til en rapport og skjema er like.

Gruppe notat. Plassert på slutten av hver gruppe med poster. Et gruppenotat kan brukes til å skrive ut sammendragsinformasjon for en gruppe.

· Bunntekst. Ligger nederst på hver side. Brukes for sidenummerering og for å skrive ut side for side informasjon.

· Rapporter notat. Du kan bruke et rapportnotat til å skrive ut totaler og annen sammendragsinformasjon for hele rapporten. Utskrevet en gang på slutten av rapporten.

Du kan gjøre endringer i et rapportprosjekt i layout- og designmodus.

Du kan se rapporten forskjellige måter:

· i rapportmodus, hvis du trenger å endre midlertidig datasammensetning i rapporten før du skriver den ut eller kopier rapportdataene til utklippstavlen. Direkte i rapportmodus kan du søke filtre å rapportere data;

· i layoutmodus, hvis du trenger å endre oppsett rapport, med dataene foran deg;

· i modus forhåndsvisning, hvis du bare vil forhåndsvise rapporten før utskrift. Bare i denne modusen vil flere rapportkolonner være synlige. I tidligere moduser viser rapporten én kolonne.

I stedet for å skrive ut rapporten, kan du sende den til mottakeren som en e-postmelding.

Filterbetingelser er begrensninger som plasseres på en spørring eller et avansert filter for å bestemme hvilke poster det vil fungere med. For eksempel, i stedet for å se alle leverandører til et selskap, kan du kun se leverandører fra Litauen. For å gjøre dette må du spesifisere en valgbetingelse som filtrerer ut alle poster unntatt de som "Litauen" er spesifisert for i feltet "Land" For å angi en valgbetingelse for et felt i forespørselsskjemaet, skriv inn uttrykket i Valgbetingelse for celle av dette feltet. I forrige eksempel er uttrykket "Litauen". Mer komplekse uttrykk kan også brukes, for eksempel "Mellom 1000 og 5000." Hvis spørringen inneholder relaterte tabeller, er verdiene spesifisert i valgbetingelsene for felt fra relaterte tabeller sensitive for store og små bokstaver. De må samsvare med tilfellet til verdiene i basistabellen.

Hvorfor kan du bruke et beregnet felt i en spørring eller rapport?

Når du oppretter spørringer, er det ofte behov for ikke bare å bruke eksisterende tabellfelt, men også å lage andre felt basert på dem, som kalles beregnede felt. For eksempel, hvis det i en tabell i en butikk er et prisfelt for et produkt og et mengdefelt for dette produktet, kan du, basert på dette, opprette et beregnet felt der totalkostnaden for hvert produkt vil bli beregnet av multiplisere pris- og kvantitetsverdiene. Med andre ord kan et beregnet felt bruke aritmetiske operatorer.

Hva er sammenslåingsparametere i en DBMS Microsoft Access, hva brukes de til?

Hva er en spørring med en parameter, og hvordan kan den settes?

Opprette en spørring med én parameter

  1. På menyen Henvisning plukke ut Databaseeksempler, og så Northwind Database Eksempel. Når vil den dukke opp hjem trykknappskjema , Lukk den.
  2. Fra menyen Utsikt plukke ut Databaseobjekter, og så Forespørsler.
  3. Kontoer og klikk deretter Konstruktør.
  4. Skriv inn følgende kommando i cellen Utvalgsbetingelser for mottakerland-feltet. Vær oppmerksom på at det angitte uttrykket må stå i hakeparenteser.

[Landskontogjennomgang]

  1. På menyen Be om Velg en Henrette. Når du blir bedt om det, skriv inn UK og klikk OK for å se søkeresultatene. Vær oppmerksom på at spørringen bare returnerer poster som har Storbritannia som mottakerland.

Opprette en spørring med to eller flere parametere

  1. Start Microsoft Access 2002.
  2. På menyen Henvisning plukke ut Databaseeksempler, og så Northwind Database Eksempel. Når vil den dukke opp Hovedknappskjema, Lukk den.
  3. Fra menyen Utsikt plukke ut Databaseobjekter, og så Forespørsler.
  4. Klikk spørring i databasevinduet Kontoer og klikk deretter Konstruktør.
  5. Skriv inn følgende kommando cellevalgsbetingelser for Plasseringsdato-feltet.

Mellom [angi startdato] og [skriv inn sluttdato]

  1. På menyen Be om velge lag Henrette. Når du blir bedt om en startdato, skriv inn 1/1/1997, og klikk deretter OK. Når du blir bedt om en sluttdato, skriv inn 31.1.1997, og klikk deretter OK for å se søkeresultatene. Merk at spørringen bare returnerer poster med en bestillingsdato som faller innenfor januar 1997.
  2. Lukk forespørselen uten å lagre.

Opprette parametere som bruker jokertegn

Følgende eksempel viser hvordan du oppretter parametere som bruker LIKE-operatoren og et jokertegn (*) .

  1. Start Microsoft Access 2002.
  2. På menyen Henvisning plukke ut Databaseeksempler, og så Northwind Database Eksempel. Når vil den dukke opp Hovedknappskjema, Lukk den.
  3. Fra menyen Utsikt plukke ut Databaseobjekter, og så Forespørsler.
  4. Klikk spørring i databasevinduet Kontoer og klikk deretter Konstruktør.
  5. Skriv inn følgende kommando i cellen Utvalgsbetingelser for merkevarefeltet:

LIK "*" & [Skriv inn produkter som inneholder uttrykket] & "*"

  1. På menyen Be om velge lag Henrette. Når du blir bedt om det, skriv inn sausen, og trykk deretter OK for å se søkeresultatene. Merk at spørringen bare returnerer poster der produktnavnet inneholder ordet "saus".
  2. Lukk forespørselen uten å lagre.

Hvilke gruppeoperasjoner kan brukes i MS Access DBMS når du oppretter spørringer med gruppeoperasjoner? Beskriv formålet med hver.

De fleste moderne DBMS-er har sin egen versjon av QBE, som skiller seg litt fra den første beskrivelsen av QBE, foreslått på slutten av 70-tallet av det tjuende århundre. La oss se på noen av egenskapene til QBE DBMS MS Access.

La oss som eksempel bruke en databasetabell som er relatert til handel (fig. 3.10). Tabellnavn TYPE (typer av produkter). Den har kolonner: produkt - produktnavn; farge - dens farge; kostnad – kostnaden for produktet.

Datasampling kan utføres i henhold til følgende alternativer:

1. Et enkelt utvalg, for eksempel: "Få grønne produkter fra TYPE-bordet."

2. Enkel prøvetaking med bestilling.

3. Sampling med kvalifiseringer (betingelser). Utvalget av poster fra kildetabellen kan være basert på: a) eksakt samsvar; b) delvis tilfeldighet; sammenlignet.

Spørringer lar deg få resulterende tabeller hvis felt tilfredsstiller visse betingelser (kriterier). Disse betingelsene er spesifisert i forespørselsskjemaet i linjen Utvalgsbetingelser. Valgbetingelsene er logiske uttrykk, bestående av operatører og operander. Sammenligningsoperatorer =,< , >, <>(ikke lik), Between, In, Like og og logiske operatorer Og, eller, ikke. Det er tillatt å bruke jokertegnmønstre.

Ris. 3.10. Eksempel på databasetabell

Hvis den nøyaktige verdien ikke er kjent eller det er nødvendig å angi verdien ufullstendig, er det praktisk å bruke mal (eksempel) med jokertegn (tegn). Eksempler på jokertegn:

* - matcher et hvilket som helst antall av alle tegn. Eksempel: 77* - for å finne alle telefoner med numre som begynner med 77.

? - samsvarer med ett teksttegn. Eksempel: 77-4?-0? - for å finne alle telefoner med numre som inneholder de fire angitte sifrene.

Maler brukes sammen med operatøren Som . Denne operatoren lar deg lage mønstre som bruker jokertegn når du søker i tekstfelt. For eksempel er den ansattes etternavn ikke kjent nøyaktig. Dette kan være Petrov, Petrovsky, Peotrovsky, etc. Deretter skal brukes til å velge på linje Betingelse plate som "Pe*".

Det er kjent at navnet består av 4 bokstaver. Da vil oppføringen Like "????" gjøre.

Operatør Mellom angir verdiområdet. For eksempel, mellom 1 og 5

(de angitte kantene på intervallene er inkludert i prøven).

Operatør I sjekker for likhet til en hvilken som helst verdi fra listen spesifisert i parentes. For eksempel In("penn","parfyme").

Logiske operasjoner AND, OR kan spesifiseres eksplisitt i et betingelsesuttrykk ved å bruke operatorene OG Og ELLER . For eksempel "parfyme" ELLER "blyant".

Som operander Spørringer kan bruke bokstaver, konstanter og identifikatorer (lenker).

Bokstaver er spesifikke verdier som oppfattes av systemet slik de er skrevet. En bokstavelig kan være et tall, en dato eller en streng. For eksempel, 1146, #31.01.02 #, "Lipetsk".

Konstanter er konstante verdier som er definert i Access. For eksempel True, False, Null, Yes, No.

Identifikator refererer til et felt, kontroll eller eiendom. Identifikatorer kan være navn på felt, tabeller, skjemaer og så videre. De er omsluttet av firkantede parenteser. En referanse til en bestemt verdi må angi dens plassering i hierarkiet av objekter i databasen. En kobling til et felt i en tabell ser ut som [Tabellnavn]![Feltnavn]. For eksempel, [Ansatte]![Etternavn].

Det anbefales å opprette valgbetingelsen ved å bruke uttrykksbyggeren. For å gjøre dette, åpne et vindu Uttrykksbygger, ved å klikke på knappen Bygge på verktøylinjen eller ved å velge kommandoen Bygge i kontekstmenyen. Du må først plassere musepekeren i tilstandsinndatacellen.

Betingelsen for et eksakt avvik mellom verdiene til ett av feltene. Hvis du trenger å finne poster i en tabell hvis feltverdier ikke tilfredsstiller en bestemt betingelse, bruk operatøren Ikke . Ikke operatør eller<>legges inn før verdien som sammenlignes. Eksempel. Velg alle postene i TYPE-tabellen, bortsett fra "blyant"-postene i feltet Produkt. For å gjøre dette, i forespørselsskjemaet i feltkolonnen Produkt på linje Utvalgsbetingelse Ikke "blyant" er lagt inn.

Upresis kamptilstand. Velge poster basert på unøyaktige forhold

verdimatching kan oppnås ved å bruke Like-operatoren. Denne operatøren lar deg finne de nødvendige postene, bare vite omtrentlig stavemåte for tekstverdien. Like-operatøren kan bruke jokertegnmønstre, som utvider muligheten til å søke etter poster når forholdene ikke er spesifisert nøyaktig. Eksempel på en valgbetingelse: Som "[d-k]*". Her - (minus) samsvarer med et hvilket som helst tegn fra området. Området må spesifiseres i stigende rekkefølge (d-k, ikke k-d).

Velg poster etter verdiområde. For å spesifisere et verdiområde i spørringsdesignervinduet, bruk operatorene >,<, Between, Like. Их можно применять с текстовыми, числовыми полями и полями типа даты. Примеры: в строке Utvalgsbetingelse mulig å legge inn: >100,00 OG< 500.00; Between # 01.01.97 # AND #31.03.97#; Like “*”. Напомним, что символ # применяется для данных типа «дата/время».

Eksempel 1. Et søk med eksakt misforhold i ett felt og en sammenligningsbetingelse i et annet felt. En forespørsel om å velge fra TYPE-tabellen alle ikke-røde varer med en pris på over 5 er vist i fig. 3.11 (forespørsel opprettet i modus Designer).

I dag skal vi snakke i detalj om spørsmål i Access.


Spørringer, som du allerede vet, er nødvendig for å jobbe med data som ligger i tabeller.
For å opprette en forespørsel...
1) ...åpne Queries i databasevinduet
2) ... og lag en forespørsel ved å bruke konstruktøren.



IKKE bruk til å lage spørringer. Herre, fordi det lar deg gjøre bare de enkleste spørringene, og senere å konvertere dem til mer avanserte er enda vanskeligere enn å lage en spørring i konstruktøren fra bunnen av.

Frafall tomme linjer

Når flere tabeller er koblet sammen, kan tomme rader oppstå.



Hvorfor skjer dette?
Faktum er at i tbPerson-tabellen vår, sammen med hundeeiere, er også dommere registrert (Petrovskaya, Yelets, Tereshchuk). Dommere har ikke rett til å ta med hundene sine til utstillingen, så i linjene med etternavn er det tomme celler med navn på hundene.
Det er to måter å fjerne tomme linjer på.
1. Sett en betingelse for betydningen av hundens navn Er ikke null, dvs. IKKE TOM.



2. Eller endre type tilkobling mellom tabellene i tabellområdet: du må kalle opp kontekstmenyen på tilkoblingslinjen som gir et unøyaktig resultat og endre Sammenslåingsalternativer.



Spørsmål til deg: hvilke innstillinger må endres i dialogboksen for sammenslåingsalternativer?

Spørsmål med beregninger

Så langt har vi kun valgt ut rekorder for ulike forhold. Men Access lar deg ikke bare se data registrert i tabeller, men også å gjøre BEREGNINGER: bestemme alder etter fødselsdato; fra fornavn, etternavn og patronym, lag et etternavn med initialer; Bestem den totale kostnaden for kjøpet basert på enhetsprisen på produktet og dets mengde; Basert på utstedelsesdatoen for boken i biblioteket, bestemme størrelsen på boten for gjeld og mye mer. Innebygde funksjoner (lik de som finnes i Excel) brukes til beregninger.


Den enkleste operasjonen er streng tillegg. La oss skrive et uttrykk i cellen for å vise følgende frase: Eieren fra byen by .
For å gjøre dette, skriv i den øverste linjen i den nye kolonnen i vilkårsområdet: + "fra byen" + .



Feltnavn er skrevet i hakeparenteser, strengfragmenter er skrevet i anførselstegn, med tilleggstegn mellom.


Uttrykk for beregninger skrives i den øverste linjen ( Felt) forholdsområde. Så langt har vi skrevet betingelser i de nederste linjene ( Utvalgsbetingelser).


Slik at du ikke blir forvirret: i den øverste linjen skriver vi HVA som skal vises på skjermen, og deretter (nederst) - under HVILKEN TILSTAND.


Trening: Skriv et uttrykk for å vise i én celle eierens etternavn og i parentes byen der han bor. Som dette: Ivanov (Moskva). By og etternavn må skrives inn fra tabellen.

Uttrykksbygger

For å gjøre det mer praktisk å redigere uttrykk, er det en spesiell editor - "Expression Builder". Det ser slik ut:



Og det kalles å bruke kontekstmenyen: du må plassere markøren på cellen der du skal skrive uttrykket:



I uttrykksbyggeren kan du velge fra et bibliotek med funksjoner:



og data fra tabeller (du kan KUN bruke de tabellene som brukes i denne forespørselen og vises i dataområdet):



Når du dobbeltklikker på et feltnavn eller en funksjon fra listen, setter Access ofte inn ordet "uttrykk" for å indikere at andre funksjoner og feltnavn kan settes inn PÅ DETTE STEDET. Ikke glem å fjerne unødvendige ord "uttrykk"!


Vi skal se på tekst- og tidsfunksjoner, samt den betingede setningen Iif(tilstand; hvis-sann; hvis-false).


Tekst funksjoner lar deg konvertere strengvariabler:
Left("Ivanov"; 2) = "Ivanov" etterlater n venstre tegn
LCase("Ivanov") = Ivanov gjør alle bokstaver små
InStr(1; "Ivanov"; "men") = 4 finner delstrengen (tredje argument) i strengen (andre argument), og er lik posisjonen (fra begynnelsen) til delstrengen i strengen
Len ("Ivanov") = 6 viser antall tegn på linjen
StrComp("Ivanov"; "Petrov") = -1 sammenligner to strenger: hvis de er like, returnerer 0
og andre…


Midlertidig lar deg jobbe med midlertidige variabler:
Måned(#12.04.2007#) = 4
År(#12.04.2007#) = 2007
Dag(#12.04.2007#) = 12.
Nå() = 28.04.2008 14:15:42 ( dagens dato og tid)
Dato() = 28.04.2008 (dagens dato)
DateDiff("d"; #12.04.2007#; #28.04.2007#) = 16 finner forskjellen mellom to datoer ("d" - i dager, ww - i uker, m - i måneder, åååå - i år osv. .)
og andre…


hjernetrim prosessbetingede uttrykk:
hvis(<=1; «щенок»; «взрослый») аналог функции ЕСЛИ из Ecxel.
og andre…


Trening: skriv et uttrykk som lager et etternavn med initialer fra etternavn, fornavn og patronym. Ivanov Ivan Ivanovich -> Ivanov I.I.
Trening
Trening
Addisjon: Det er to måter å beregne en hunds alder på: en mer nøyaktig, den andre mindre:
1) trekke fra fødselsåret til hunden fra inneværende år;
2) ved hjelp av DateDiff-funksjonen, beregne hvor mange dager som har gått fra fødselen til i dag. Bruk en metode i en oppgave og en annen i en annen.

Spørringer med parameter

Når du løper forespørsel med parameter, i motsetning til en vanlig utvalgsforespørsel, utføres den ikke umiddelbart, men ber deg først klargjøre noen utvalgsbetingelser i en dialogboks. For eksempel ønsker vi å få full informasjon om en hund med et bestemt turneringsnummer.



Denne forespørselen er strukturert slik:



På stedet der valgbetingelsen vanligvis står, er det nå skrevet et spørsmål (i hakeparentes) som vil bli stilt til brukeren. Og brukerens svar, som du kanskje har gjettet, vil bli satt inn i denne cellen som en valgbetingelse.


Trening: Lag en spørring som vil returnere alle hunder basert på eierens etternavn, som er en gratis parameter.

Spørsmål med gruppering

Ved å bruke uttrykksbyggere kan vi utføre operasjoner på én rad: legge til verdier i celler, transformere data.
Men hva om vi trenger å behandle flere rader samtidig: beregn summen av poeng, finn antall rader med samme verdi av et gitt felt?
Dette gjøres ved hjelp av gruppering (svært likt å oppsummere i Excel).


La oss telle hvor mange hunder av hver rase som kom til utstillingen. For å gjøre dette slipper vi bare to felt i vilkårsområdet: navn og rase – og ringer en ekstra linje gruppedrift(via kontekstmenyen i vilkårsområdet):



La oss nå gruppere hundene etter rase og telle antall forskjellige kallenavn i hver gruppe:



La oss oppsummere resultatene fra utstillingen og beregne gjennomsnittsscore for eksteriør, gjennomsnittsscore for trening og summen deres.


Legg til en tabell med vurderinger (tbMarks) i tabellområdet. Vi grupperer estimatene etter turneringsnummeret til hunden, og blant gruppeoperasjonene velger vi gjennomsnittsverdien av Avg (fra engelsk. gjennomsnitt- gjennomsnitt).


Kjør spørringen og i visningsmodus, legg merke til at kolonnene med gruppeoperasjoner har et dobbeltnavn (operasjon + feltnavn). Dette vil være nyttig for oss når vi skal beregne summen av poeng.





Du kan også runde av verdier til én desimal: Runde(+;1)


Trening: Finn ut hvilken hund som var den mest kontroversielle blant dommerne. For å gjøre dette, må du trekke minimum fra maksimal poengsum.

Forespørsler om endringer, slettinger, tillegg

I den første leksjonen snakket vi allerede om det faktum at spørringer lar deg ikke bare se data fra tabeller, men også redigere poster: legg til nye, slett dem, endre dem. Spørringstypen kan endres ved hjelp av spørringslisten på verktøylinjen.



Databaseoperatøren mottok ny informasjon på kvelden før utstillingen:
1) Desi-hunden er syk og vil ikke kunne delta i utstillingen;
2) ved en feiltakelse ble Guardian, som faktisk er en engelsk setter, oppført som en irsk setter;
3) eieren Migunova sendte inn en søknad om å delta i utstillingen av en annen av hennes hunder (kallenavn: Harry, rase: Gordon Setter, kjønn: m, fødselsdato: 09.15.07).


La oss begynne å redigere databasen.
1) Slett oppføring fra Desi.
Opprett en quDelDog-forespørsel. Forespørselstype – for sletting. Med en endring i forespørselstype endres også vilkårsområdet noe. Dukket opp ny celle Fjerning. Under den spesifiserer du betingelsen som du vil velge poster som skal slettes. Selv om du angir en valgbetingelse for ett felt, vil HELE posten bli slettet.



Etter at du har klikket på "utropstegnet", vil en melding vises på skjermen som indikerer at oppføringen er slettet. Nå åpen tbHund tabell og sørg for at Desi ikke er med.


2) På Guardian, endre irsk setter til engelsk setter.
Opprett en quUpdateDog-forespørsel. Forespørselstype – oppdatering. Vi finner Guardian og oppdaterer rasen hans.



Åpen tbHund tabell og sørg for at Guardians rase er engelsk setter.


3) Legg til en oppføring med Harry.
Opprett en quAddDog-forespørsel. Forespørselstype – for å legge til. Legg til spørringer har én funksjon: tabellområdet viser IKKE de tabellene HVOR du legger til en post, men HVOR du tar dataene fra (hvis nødvendig). Du spesifiserer måltabellen (som poster legges til) i dialogboksen som vises så snart du angir spørringstypen (som skal legges til):



Siden vi ikke tar data fra andre tabeller, men lager Ny inngang, da må tabellområdet være TOM! (det skal ikke være noen bord der). I vilkårsområdet på linjen Felt du skriver HVA som skal legges til (en ny verdi for hvert felt), og i linjen Addisjon HVOR (feltnavn):



Åpen tbHund tabell og sørg for at Harry dukker opp i den!

Språk SQL-spørringer

Når du klikker på "utropstegnet" blir forespørselen utført. Slik ser det ut for en nybegynner.
Fagfolk vet at i dette øyeblikk instruksjonene på spesielt språk SQL-spørringer. Faktum er at Access ikke er det eneste databasestyringssystemet (DBMS). Kanskje du har hørt om slike DBMS på Internett som MySQL, FreeBSD??? Tilgang tilbyr rett og slett veldig brukervennlig grensesnittå jobbe med databasen, og i andre kontrollsystemer er det ingen knapp med utropstegn. Men det er alltid et spesielt vindu der du kan skrive SQL-instruksjoner.
Access lar deg også redigere spørringer i SQL-setningsmodus:



Reglene for SQL-språket er ikke så kompliserte. Dette kan du se selv! Gjør en enkel valgforespørsel (vis for eksempel navnet, rasen og fødselsdatoen til en hund som heter Harry). Åpne nå Harrys søkeord i SQL-modus!
Instruksjonene er veldig enkle:
VELG felt1, felt2,...
FRA tabell 1, tabell 2,...
HVOR tilstand1, tilstand2,...


Åpne nå oppdateringen, endre, slett spørringer (quDelDog, quUpdateDog, quAddDog) i SQL-modus og skriv ned malene til SQL-setningene deres på et stykke papir (som nettopp ble gjort for utvalgsspørringen).


Spørringer med en parameter, spørringer for gruppering, spørringer med beregninger er de samme SQL-spørringene, men bare med litt mer komplekse utvalgsbetingelser. SQL-språk– et uunnværlig verktøy for de som jobber med databaser!

Oppgaver

Her er temaene vi dekket:
- enkle og sammensatte valgbetingelser
- LIKER operatør
- utvalg fra flere bord
- uttrykksbygger
- forespørsler med en parameter
- forespørsler om gruppering
- forespørsler om å oppdatere, legge til, slette
- SQL spørringsspråk.


Det er mange av dem! Men når du har mestret dem, kan du finne all informasjon i databasen.


Test kunnskapen din! Kjør følgende spørringer i databasen din (eller gi nytt navn til de som allerede er utført slik at navnene deres samsvarer med navnene på oppgavene):

1. prøve

quSelectDog: Finn alle Shar-Peis og Gordon Settere fra regionene (IKKE fra Moskva); bruk "ikke lik"-operatoren.

2. Som operatør

quLike: Finn alle MTS-abonnenter (de med mobiltelefon starter med 8(916)...).

3. uttrykk

quEvalText: Skriv et uttrykk som lager et etternavn med initialer fra etternavn, fornavn og patronym. Ivanov Ivan Ivanovich -> Ivanov I.I.
quEvalDate: Skriv et uttrykk som beregner hvor gammel en hund er basert på fødselsdatoen.
quEvalIif: skriv et uttrykk som bestemmer etter alder hvilken alderskategori hunden er i: "valp" - opptil et år; "junior" - fra ett til to år; "Senior" - over to år gammel.
Addisjon: Bruk en måte å beregne hundens alder i en oppgave, og en annen i en annen: 1) trekk fra hundens fødselsår fra inneværende år; 2) ved hjelp av DateDiff-funksjonen, beregne hvor mange dager som har gått fra fødselen til i dag.

4.parameter

quParameter: Lag en spørring som vil returnere alle hunder basert på eierens etternavn, som er en gratis parameter.

5. gruppering

quGroup: Finn ut hvilken hund som forårsaket de mest motstridende meningene fra dommerne.

6. databaseredigering

Kort før utstillingen dro eieren Gorokhovets for permanent opphold (permanent opphold) i Tyskland og overleverte alle hundene til sin venn Mikhail Igorevich Karpov. Påkrevd:
1) quaAddOwner: legg til en post om den nye eieren;
2) quUpdateOwner: endre eier-IDen til Gorokhovets-hundene til Karpovs ID;
3) quDelOwner: fjern Gorokhovets fra databasen.


Jeg venter på databasene dine med fullførte oppgaver, samt maler med SQL-instruksjoner for forespørsler om oppdatering, endring og sletting.

Det er fire typer endringsforespørsler: å slette, å oppdatere og legge til poster og å opprette en tabell.

Forespørsel om fjerning sletter en gruppe poster fra en eller flere tabeller. For eksempel lar en sletteforespørsel deg slette oppføringer av produkter som ikke lenger er på lager eller som det ikke er bestillinger for. Med en sletteforespørsel kan du bare slette hele posten, ikke individuelle felt i den.

Forespørsel om å oppdatere poster gjør generelle endringer i en gruppe poster i en eller flere tabeller. For eksempel stiger prisene på alle meieriprodukter med 10 prosent eller lønnen til ansatte i en bestemt kategori øker med 5 prosent. En postoppdateringsspørring lar deg endre data i eksisterende tabeller.

Forespørsel om å legge til legger til en gruppe poster fra én eller flere tabeller til slutten av én eller flere tabeller. Tilleggsforespørselen er også nyttig når du gjør følgende:

Legge til felt basert på utvalgsbetingelser;

Legger til poster hvis noen felt fra en tabell ikke eksisterer i en annen. Vedlegg-spørringen vil legge til data i de samsvarende feltene og hoppe over resten.

Spørsmål om å lage en tabellMed Oppretter en ny tabell basert på alle eller deler av dataene fra en eller flere tabeller. En opprettingstabellspørring er nyttig for å gjøre følgende:

Opprette en tabell for eksport til en annen Microsoft Access-database;

Opprette rapporter som inneholder data fra flere tabeller;

Opprettelse sikkerhetskopi tabeller.

Opprette en arkivtabell som inneholder gamle poster;

Forbedret ytelse av skjemaer og rapporter basert på flertabellspørringer eller SQL-uttrykk.

Velge data fra én tabell

I tabellmodus kan du utføre forskjellige operasjoner med dataene i denne tabellen: visning, sortering, filtrering osv. En av fordelene med spørringer er at de lar deg raskt velge de nødvendige dataene fra flere relaterte tabeller. Dessuten er alle teknikkene som brukes når du arbeider med én tabell også egnet for komplekse flertabellspørringer.

Etter å ha kjørt en utvalgsspørring, oppretter Microsoft Access et postsett som inneholder de valgte dataene, som du kan arbeide med på samme måte som en tabell.

Den enkleste måten å lage en spørring basert på én tabell på er denne: åpne databasevinduet, velg fanen i databasevinduet Forespørsler, trykk på knappen Skape, velg modus i et nytt vindu Konstruktør Og Ok. I det neste "Legg til tabell"-vinduet velger du ønsket tabell, og klikk deretter på knappene Legg til Og Lukk.

Spørringsdesignervinduet (fig. 10.1) er delt inn i to deler. Øverst er det lister over tabell- eller spørringsfelt basert på hvilke en ny spørring opprettes. Nederst er det et QBE-skjema (query by sample), der arbeidet med å lage en forespørsel utføres. Hver skjemakolonne representerer ett felt som brukes i forespørselen.

Første linje Spørringsskjemaet brukes til å velge felt som kan gis navn som brukes ved visning av spørringsposter. I andre linje Spørreskjemaet viser navnet på tabellen som feltet ble valgt fra. I tredje linje skjema, kan du spesifisere hvilke kolonner du vil sortere. Avmerkingsbokser i skjemalinjen Utgang på display er ansvarlig for å vise feltene i et postsett. Som standard vises alle feltene som er inkludert i forespørselsskjemaet. For å angi en betingelse for valg av poster, bruk linjen Utvalgsbetingelse.

Fig. 10.1. Query Builder-vinduet

Inkluderer felt i en forespørsel. For å inkludere et felt i forespørselsskjemaet, må du velge det i tabellen og dra det med musen inn i det tilsvarende feltet i forespørselsskjemaet.

Angi feltegenskaper. Generelt har felt i en spørring de samme egenskapene som i tabellen de er overført fra. Du kan imidlertid angi andre egenskapsverdier. For å gjøre dette, klikk på en hvilken som helst celle i den tilsvarende kolonnen i forespørselsskjemaet og trykk på knappen Egenskaper på verktøylinjen. Etter dette legges feltegenskapene inn.

Angi valgbetingelser. Hvis du trenger å velge poster med en bestemt feltverdi, må du angi den i cellen Betingelse utvalg dette jordet. Tekstverdi som en betingelse er omgitt av anførselstegn. Når du spesifiserer en utvalgsbetingelse, kan du bruke relasjonstegn < , >, >=, <=, =,< > og logiske operasjoner eller, og.

I tillegg gir Access spesielle operatører for å velge datautgang i en spørring:

mellom- definerer verdiområdet. Mellom 10 og 20 betyr det samme som uttrykket >=10 og <=20 ;

i- spesifiserer listen over verdier som brukes til sammenligning. Uttrykk i(“ wa”,” ca”,” id”) betyr det samme som uttrykket wa eller ca eller id ;

som- denne operatøren lar deg bruke følgende symboler når du velger tekstfelt: ?, *,# . Symbol # indikerer at en gitt posisjon må inneholde et tall, symboler ? Og * har samme formål som i OC MS DOS-filnavn.

For eksempel, somB*” - betyr at du må velge felt som begynner med en bokstav I.

Access behandler valgbetingelser for datoer og klokkeslett i alle formater. Når du går inn, må datoen eller klokkeslettet være omgitt av # symboler. For eksempel, #15. april 1998#, #15/04/98# definerer samme dato.

Access tilbyr flere funksjoner som du kan bruke når du angir filterkriterier for datoer og klokkeslett:

dag(dato)- returnerer verdien av dagen i måneden i området fra 1 til 31. Hvis du trenger å velge poster med bestemte dager i måneden, setter du et beregnet felt, for eksempel day([Order_date]) og skriv inn en valgbetingelse , for eksempel >10. I dette tilfellet velges alle feltposter hvis beregnede felt er >10;

måned(dato)- returnerer verdien av måneden i året i området fra 1 til 12;

år(dato)- returnerer årsverdien i området fra 100 til 9999;

ukedag(dato)- returnerer et heltall fra 1(søndag) til 7(lørdag), tilsvarende ukedagen;

Dato() - returnerer gjeldende systemdato.

Beregnede felt. Du kan utføre beregninger på alle tabellfelt og gjøre det beregnede uttrykket til et nytt felt i postsettet. I dette tilfellet kan du bruke alle funksjoner innebygd i Access og utføre aritmetiske operasjoner på tabellfelt ved å bruke operatorene: +, -, *, /, \, ^, mod, &. La oss for eksempel si at det er et feltnavn kalt " Mengde", hvor antall produktenheter og feltet " Pris , hvor kostnaden for en vareenhet registreres. Deretter, for å beregne kostnadene for varene, må du skrive inn uttrykket i det tomme feltet i forespørselsskjemaet Antall*Pris og verdiene til disse feltene vil multipliseres.

Spesifisere beregnede feltnavn. Når du oppretter et uttrykk i et spørringsskjema, plasserer Access standardfeltnavnet "Uttrykk 1:". Du kan endre eller tildele feltnavn, noe som er viktig hvis du trenger å bruke dem i en rapport eller andre spørringer. Dette gjøres ved å bruke egenskapsvinduet. For å gjøre dette, klikk på en hvilken som helst celle i den tilsvarende kolonnen og trykk på knappen Egenskaper på verktøylinjen og velg Signatur.

Parametriske søk. Forespørselsbetingelser kan inkluderes direkte i forespørselsskjemaet, men for å gjøre det mer universelt kan du i stedet for en bestemt utvalgsverdi inkludere en parameter i forespørselen, dvs. opprette en parametrisk spørring.

For å gjøre dette, skriv inn en frase i hakeparenteser i "Utvalgsbetingelse"-linjen, som vil vises som et "hint" under dialogen, for eksempel [Skriv inn etternavn]. Det kan være flere slike parametere, hver for sitt eget felt, og navnet på hver parameter må være unikt.

Sortering av data. Access viser vanligvis poster i den rekkefølgen de hentes fra databasen. Du kan endre rekkefølgen på datautdata ved å angi sorteringsrekkefølgen Stigende eller Synkende.

Siste spørsmål. Noen ganger er vi ikke interessert i individuelle tabellposter, men i de totale verdiene for grupper av data. For eksempel må du finne ut det gjennomsnittlige salgsvolumet for hver måned separat. Dette kan gjøres ved hjelp av en oppsummeringsspørring. For å gjøre dette må du klikke på knappen Konserndrift vil vises på verktøylinjen og i skjemaet ny linje med dette navnet. I dette tilfellet utføres gruppering i henhold til alle felt som er angitt i skjemaet, men resultatet summeres ikke. For å få resultatene må du erstatte Gruppering på linje Gruppedrift til spesifikke sluttfunksjoner.

Access tilbyr flere funksjoner for å aktivere gruppeoperasjoner. De viktigste:

sum- beregner summen av alle verdiene til et gitt felt i hver gruppe. Brukes kun for numeriske og valutafelt;

gj.sn- Beregner det aritmetiske gjennomsnittet av alle verdiene til et gitt felt i hver gruppe;

min, maks- beregner den minste (største) verdien av et felt i en gruppe;

telle- beregner antall poster der verdiene i dette feltet er forskjellige fra Null.

Velge poster for å danne grupper. Du kan ikke inkludere enkelte poster i de endelige søkegruppene. For å gjøre dette må du legge til ett eller flere filterfelt i forespørselsskjemaet. Velg innstillingen for å opprette et filter i gruppeoperasjonslinjen Betingelse, fjern merket Utgang på display For dette feltet er det innført en utvalgsbetingelse.