V Accessu lahko ustvarite in spremenite tabele, omejitve, indekse in relacije, tako da napišete poizvedbe za definicijo podatkov v pogledu SQL. V tem članku so razložene poizvedbe za definicijo podatkov in kako jih uporabiti za ustvarjanje tabel, omejitev, indeksov in relacij. V tem članku lahko tudi določite, Kdaj želite uporabiti poizvedbo za definicijo podatkov.

V tem članku

Pregled

V nasprotju z drugimi Accessovimi poizvedbami poizvedba za definicijo podatkov ne pridobi podatkov. Namesto tega poizvedba za definicijo podatkov uporablja jezik za definicijo podatkov za ustvarjanje, spreminjanje ali brisanje predmetov zbirke podatkov.

Opomba: Jezik za definicijo podatkov (DDL) je del strukturiranega jezika poizvedbe (SQL).

Poizvedbe za definicijo podatkov so lahko zelo priročno. Dele sheme zbirke podatkov lahko redno izbrišete in znova ustvarite le tako, da zaženete nekatere poizvedbe. Uporabite poizvedbo za definicijo podatkov, če poznate izjave SQL in nameravate izbrisati in znova ustvariti določene tabele, omejitve, indekse ali relacije.

Opozorilo: Uporaba poizvedb za definicijo podatkov za spreminjanje predmetov zbirke podatkov je lahko tvegana, ker dejanja niso priložena pogovorna okna s potrditvijo. Če se zmotite, lahko izgubite podatke ali nehote spremenite načrt tabele. Bodite previdni, ko uporabite poizvedbo za definicijo podatkov, da spremenite predmete v zbirki podatkov. Če niste odgovorni za vzdrževanje zbirke podatkov, ki jo uporabljate, se obrnite na skrbnika zbirke podatkov, preden zaženete poizvedbo za definicijo podatkov.

Pomembno: Preden zaženete poizvedbo za definicijo podatkov, naredite varnostno kopijo vseh tabel, ki so vključene.

Ključne besede DDL

Ključna beseda

Uporaba

CREATE

Ustvarjanje indeksa ali tabele, ki še ne obstaja.

ALTER

Spremenite obstoječo tabelo ali stolpec.

DROP

Izbrišite obstoječo tabelo, stolpec ali omejitev.

ADD

Dodajte stolpec ali omejitev v tabelo.

COLUMN

Uporaba z DODATKom, SPREMINJANJEm ali SPUŠČANJEm

CONSTRAINT

Uporaba z DODATKom, SPREMINJANJEm ali SPUŠČANJEm

INDEX

Uporaba z USTVARJANJEm

TABLE

Uporaba s SPREMINJANJEm, USTVARJANJEm ali SPUŠČANJEm

Na vrh strani

Ustvarjanje ali spreminjanje tabele

Če želite ustvariti tabelo, uporabite ukaz CREATe TABLe. Ukaz» ustvari tabelo «ima to sintakso:

CREATE TABLE table_name 
(field1 type [(size)] [NOT NULL] [index1]
[, field2 type [(size)] [NOT NULL] [index2]
[, ...][, CONSTRAINT constraint1 [, ...]])

Edini zahtevani elementi ukaza CREATe TABLe so ukaz» CREATe table «in ime tabele, vendar boste po navadi želeli določiti nekatera polja ali druge vidike tabele. Razmislite o tem preprostem primeru.

Recimo, da želite ustvariti tabelo za shranjevanje imena, leta in cene rabljenih vozil, ki jih nameravate kupiti. Želite omogočiti do 30 znakov za ime in 4 znake za leto. Če želite uporabiti poizvedbo za definicijo podatkov, da ustvarite tabelo, naredite to:

Opomba: Morda boste morali najprej omogočiti vsebino zbirke podatkov, da se bo poizvedba za definicijo podatkov izvajala:

  • V Vrstici s sporočili kliknite Omogoči vsebino.

Ustvarjanje tabele

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    USTVARJANJE TABELnih vozil (ime besedila (30), leto TEXT (4), cena valute)

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Spreminjanje tabele

Če želite spremeniti tabelo, uporabite ukaz ALTER TABLe. Če želite dodati, spremeniti ali spustiti (odstraniti) stolpce ali omejitve, lahko uporabite ukaz ALTER TABLe. Ukaz» ALTER TABLe «ima to sintakso:

ALTER TABLE table_name predicate

Če je predikat lahko eno od teh dejanj:

ADD COLUMN field type[(size)] [NOT NULL] [CONSTRAINT constraint]

ADD CONSTRAINT multifield_constraint

ALTER COLUMN field type[(size)]

DROP COLUMN field

DROP CONSTRAINT constraint

Recimo, da želite dodati polje z besedilom 10 znakov za shranjevanje informacij o stanju posameznega vozila. Naredite lahko to:

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    ALTER TABLe za avtomobile dodajanje pogoja stolpca besedilo (10)

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Na vrh strani

Ustvarjanje kazala

Če želite ustvariti indeks v obstoječi tabeli, uporabite ukaz Ustvari indeks. Ukaz» Ustvari indeks «ima to sintakso:

CREATE [UNIQUE] INDEX index_name
ON table (field1 [DESC][, field2 [DESC], ...])
[WITH {PRIMARY | DISALLOW NULL | IGNORE NULL}]

Edini zahtevani elementi so ukaz» Ustvari indeks «, ime indeksa, argument» ON «, ime tabele, ki vsebuje polja, ki jih želite indeksirati, in seznam polj, ki jih želite vključiti v kazalo.

  • Argument» DESC «povzroči, da je indeks ustvarjen v padajočem vrstnem redu, ki je lahko uporaben, če pogosto zaganjate poizvedbe, ki iščejo zgornje vrednosti za indeksirano polje, ali da razvrstite indeksirano polje v padajočem vrstnem redu. Kazalo je privzeto ustvarjeno v naraščajočem vrstnem redu.

  • S PRIMARNIm argumentom je indeksirano polje ali polja kot primarni ključ tabele.

  • Argument» ne dovoli NULL «povzroči, da indeks zahteva, da se vrednost vnese v indeksirano polje – to pomeni, da ničelne vrednosti niso dovoljene.

Recimo, da imate tabelo z imenom» avtomobili «s polji, ki shranjujejo ime, leto, ceno in stanje rabljenih vozil, ki jih nameravate kupiti. Predpostavimo tudi, da je tabela postala velika in da pogosto vključite polje» Year «v poizvedbah. V polju» leto «lahko ustvarite indeks, s katerim boste lažje povrnili rezultate z uporabo tega postopka:

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    USTVARJANJE INDEKSa YearIndex za avtomobile (leto)

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Na vrh strani

Ustvarjanje omejitve ali relacije

Omejitev določa logično stanje, ki ga mora polje ali kombinacija polj izpolnjevati, ko so vrednosti vstavljene. ENOLIČNa omejitev na primer preprečuje, da bi omejeno polje sprejelo vrednost, ki bi podvojila obstoječo vrednost za polje.

Relacija je vrsta omejitve, ki se sklicuje na vrednosti polja ali kombinacije polj v drugi tabeli, da se določi, ali je vrednost mogoče vstaviti v omejeno polje ali kombinacijo polj. Ne uporabite posebne ključne besede, ki označuje, da je omejitev relacija.

Če želite ustvariti omejitev, uporabite stavek CONSTRAINT v ukazu CREATe TABLe ali ALTER TABLe. Obstajata dve vrsti stavkov CONSTRAINT: eno za ustvarjanje omejitve v enem polju, druga pa za ustvarjanje omejitve v več poljih.

Omejitve z enim poljem

Stavek CONSTRAINT z enim poljem takoj sledi opredelitvi polja, ki ga omejuje, in ima to sintakso:

CONSTRAINT constraint_name {PRIMARY KEY | UNIQUE | NOT NULL |
REFERENCES foreign_table [(foreign_field)]
[ON UPDATE {CASCADE | SET NULL}]
[ON DELETE {CASCADE | SET NULL}]}

Recimo, da imate tabelo z imenom» avtomobili «s polji, ki shranjujejo ime, leto, ceno in stanje rabljenih vozil, ki jih nameravate kupiti. Predvidevamo tudi, da pogosto pozabljate na vnos vrednosti za stanje avtomobila in želite te informacije vedno zapisati. Polje» pogoj «lahko ustvarite tako, da preprečite, da bi prazno polje zapustili, in sicer tako, da uporabite ta postopek:

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    Spreminjanje TABELnih vozil za spreminjanje pogoja» besedilo «omejitve ConditionRequired ni NULL

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Zdaj Predvidevam, da je čez nekaj časa opazite, da je v polju pogoja veliko podobnih vrednosti, ki bi morale biti enake. Na primer, nekateri avti imajo pogojno vrednost revnih in drugi imajo vrednost slabih.

Opomba: Če želite spremljati tudi preostale postopke, dodajte nekaj ponarejenih podatkov v tabelo» avtomobili «, ki ste jo ustvarili v prejšnjih korakih.

Ko počistite vrednosti, tako da so bolj dosledne, lahko ustvarite tabelo, imenovano CarCondition, z enim poljem, imenovanim pogojem, ki vsebuje vse vrednosti, ki jih želite uporabiti za stanje vozil:

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    Ustvarjanje tabele CarCondition (pogojno besedilo (10))

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

  5. Ustvarjanje primarnega ključa za tabelo z izjavo ALTER TABLe:

    ALTER TABLe CarCondition ALTER Condition (besedilo) omejitev CarConditionPK PRIMARNEga ključa

  6. Če želite vstaviti vrednosti iz polja pogoj v tabeli» avtomobili «v novo tabelo CarCondition, vnesite ta SQL na zavihek» predmet pogleda SQL «:

    Vstavljanje v CarCondition izberite RAZLIKOVALni pogoj iz avtomobilov;

    Opomba: Izjava SQL v tem koraku je poizvedba za dodajanje. V nasprotju s poizvedbo za definicijo podatkov se poizvedba za dodajanje konča s podpičjem.

  7. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Ustvarjanje relacije z uporabo omejitve

Če želite zahtevati, da se vsa nova vrednost, ki je vstavljena v polje pogoj v tabeli» avtomobili «, ujema z vrednostjo polja pogoj v tabeli CarCondition, lahko ustvarite relacijo med CarCondition in avtomobili v polju z imenom pogoj, in sicer tako, da uporabite ta postopek:

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    Spreminjanje TABELnih vozil za spreminjanje pogoja besedila CONSTRAINT FKeyCondition reference CarCondition (pogoj)

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Omejitve z več polji

Stavek CONSTRAINT z več polji je mogoče uporabiti le zunaj stavka za definicijo polja in ima to sintakso:

CONSTRAINT constraint_name 
{PRIMARY KEY (pk_field1[, pk_field2[, ...]]) |
UNIQUE (unique1[, unique2[, ...]]) |
NOT NULL (notnull1[, notnull2[, ...]]) |
FOREIGN KEY [NO INDEX] (ref_field1[, ref_field2[, ...]])
REFERENCES foreign_table
[(fk_field1[, fk_field2[, ...]])] |
[ON UPDATE {CASCADE | SET NULL}]
[ON DELETE {CASCADE | SET NULL}]}

Razmislite o drugem primeru, ki uporablja tabelo» avtomobili «. Recimo, da želite zagotoviti, da dva zapisa v tabeli» avtomobili «nista enak nabor vrednosti za ime, leto, stanje in ceno. Ustvarite lahko ENOLIČNo omejitev, ki velja za ta polja, in sicer tako, da uporabite ta postopek:

  1. Na zavihku Ustvari v skupini makri &a koda kliknite načrt poizvedbe.

  2. Na zavihku načrt v skupini Vrsta poizvedbe kliknite definicija podatkov.

    Mreža načrta je skrita in prikaže se zavihek predmet» pogled SQL «.

  3. Vnesite to izjavo SQL:

    ALTER TABLe Cars Dodaj omejitev NoDupes UNIQUE (ime, leto, stanje, cena)

  4. Na zavihku Načrt v skupini Rezultati kliknite Zaženi.

Na vrh strani

Ali potrebujete dodatno pomoč?

Razširite svoja znanja
Oglejte si izobraževanje

Vam je bila informacija v pomoč?

Kako ste zadovoljni s kakovostjo jezika?
Kaj je vplivalo na vašo izkušnjo?

Zahvaljujemo se vam za povratne informacije.

×