Tabulu vai indeksu izveidošana vai modificēšana, izmantojot datu definīcijas vaicājumu

Svarīgi!:  Šis raksts ir mašīntulkots, skatiet atrunu. Lūdzu, skatiet šī raksta versiju angļu valodā šeit jūsu informācijai.

Microsoft Office Access 2007, tas ir viegli, lai izveidotu un modificētu tabulu, ierobežojumiem un indeksi noformējuma skatā un relācijas izveide, izmantojot Relāciju logs. Varat arī izveidot un modificēt šo pašu iestāžu, rakstot datu definīcijas vaicājumu SQL skatā.

Šajā rakstā paskaidrota datu definēšanas vaicājumi un parāda, kā izmantot šādu vaicājumu, lai izveidotu tabulu, indeksi, ierobežojumiem un relācijas. Šajā rakstā arī var palīdzēt jums izlemt, kādos gadījumos izmantot datu definīcijas vaicājumu.

Iespējamās darbības

Uzziniet, kad izmantot datu definīcijas vaicājumu

Tabulas izveidošana vai modificēšana

Alfabētiskā rādītāja izveidošana

Ierobežojuma vai relācijas izveidošana

Uzziniet, kad izmantot datu definīcijas vaicājumu

Atšķirībā no citām vaicājumu datu definīcijas vaicājumu nevar izgūt datus. Lielākā daļa vaicājumiem izmanto datu manipulāciju valodas (BDL), kas ietver strukturēta vaicājumvaloda (SQL) komandas, kas nosaka, kā datus no esošas datu bāzes objektu apvienoti un manipulēt datu rezultātus, ko vēlaties izveidot. Datu definēšanas vaicājumi izmanto datu definēšanas valoda (DDL), kas ietver SQL komandas, kas norādītu datu bāzes objektu, kas saglabātu vai alfabētiskā rādītāja datu un SQL komandas, kas kontrolē lietotāju piekļuvi datu bāzes objektu definīciju. Office Access 2007, datu definīcijas vaicājumu definē vai mainīts datu bāzes objektu definīcijas.

Kopumā, jums vajadzētu izmantot grafiskā noformējuma interfeisus, Office Access 2007 nodrošina (piemēram, noformējuma skatā un relāciju logs) lai izveidotu tabulu, ierobežojumiem, indeksus un relācijas. Tomēr, ja jums ir tabulas, kuras regulāri tiek izdzēsts un atkārtoti izveidot, izmantojot šīs saskarnes var kļūt daudz laika. Izmantojot datu definīcijas vaicājumu, var rakstīt vaicājuma vienreiz, un pēc tam izpildiet to vēlreiz, kad tas ir nepieciešams. Apsveriet iespēju izmantot datu definīcijas vaicājumu tikai tad, ja jums ir zināmas SQL priekšrakstus, un, ja plānojat dzēst un atkārtoti izveidot īpašu tabulu, ierobežojumiem vai indeksu regulāri.

Svarīgi!: Datu definēšanas vaicājumu izmantošana, lai modificētu datu bāzes objektu var risku, jo darbības nav pievienots apstiprinājuma dialoglodziņus. Ja kļūdījāties, varat datu zudumu vai nejauši mainīt tabulu noformējumu. Uzmanieties, izmantojot datu definīcijas vaicājumu, lai mainītu objektus datu bāzē. Ja neesat atbildīgs, lai saglabātu datu bāzi, kuru izmantojat, jums vajadzētu konsultēties ar datu bāzes administratoru pirms palaišanas datu definīcijas vaicājumu. Turklāt, ieteicams izveidot dublējumkopiju tabulas, kurā jūs gatavojaties šādu vaicājumu.

Uz lapas sākumu

Tabulas izveidošana vai modificēšana

Lai izveidotu tabulu, izmantojiet komandu CREATE TABLE. Komandai CREATE TABLE ir šāda sintakse:

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

Tikai nepieciešamie elementi CREATE TABLE komanda ir komandu izveidot tabulu, sevi, tās tabulas nosaukums, vismaz vienam laukam un katra lauka datu tipa. Aplūkosim vienkāršu piemēru.

Pieņemsim, ka vēlaties iegādāties lietotu automašīnu, tāpēc jāizveido tabula, kurā apkopoti lietoto automašīnu nosaukumi, ražošanas gads un cena. Jūs vēlaties, lai nosaukums būtu ne vairāk kā 30 rakstzīmes, bet gads — 4 rakstzīmes garš. Lai izmantotu datu definīcijas vaicājumu un izveidotu tabulu, rīkojieties šādi:

Piezīme.: Vispirms ir jāiespējo datu bāzi, lai datu definīcijas vaicājumu, lai palaistu saturu.

  1. Ziņojumu josla, noklikšķiniet uz Opcijasun pēc tam noklikšķiniet uz Iespējot šo saturu.

  2. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  3. Aizveriet dialoglodziņu Tabulas rādīšana.

  4. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  5. Ierakstiet šādu SQL priekšrakstu:

    CREATE TABLE Auto (Nosaukums TEXT(30), Gads TEXT(4), Cena CURRENCY)

  6. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Tabulas modificēšana

Lai modificētu tabulu, izmantojiet komandu ALTER TABLE. Komandu ALTER TABLE var izmantot, lai pievienotu, modificētu vai nomestu (noņemtu) kolonnas vai ierobežojumus. Komandai ALTER TABLE ir šāda sintakse:

ALTER TABLE table_name predicate

kur predikātu varat norādīt kādu no šīm darbībām:

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

ADD CONSTRAINT multifield_constraint

ALTER COLUMN field type[(size)]

DROP COLUMN field

DROP CONSTRAINT constraint

Pieņemsim, ka vēlaties pievienot 10 rakstzīmes gara teksta lauku, kur glabāt informāciju par katras automašīnas stāvokli. Varat rīkoties šādi:

  1. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  2. Aizveriet dialoglodziņu Tabulas rādīšana.

  3. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  4. Ierakstiet šādu SQL priekšrakstu:

    ALTER TABLE Auto ADD COLUMN Stāvoklis TEXT(10)

  5. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Uz lapas sākumu

Indeksa izveide

Lai esošai tabulai izveidotu indeksu, izmantojiet komandu CREATE INDEX. Komandai CREATE INDEX ir šāda sintakse:

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

Vienīgie obligātie elementi ir komanda CREATE INDEX, indeksa nosaukums, arguments ON, tabulas nosaukums, kurā ir indeksējamie lauki, un indeksā iekļaujamo lauku saraksts.

  • Izmantojot argumentu DESC, izveidotajam indeksam ir dilstoša secība, kas būs noderīgi, ja bieži izpildāt vaicājumus indeksēta lauka lielāko vērtību meklēšanai vai indeksēta lauka kārtošanai dilstošā secībā. Pēc noklusējuma izveidotajam indeksam ir augoša secība.

  • AR primāro arguments izveido indeksētu lauku vai laukus, kā primārā atslēga tabulas.

  • Arguments WITH DISALLOW NULL nosaka indeksam obligātu prasību ievadīt indeksētajā laukā vērtību — tas ir, lauki bez vērtībām nav atļauti.

Pieņemsim, ka tabulā ar nosaukumu Auto ir lauki ar jūs interesējošu automašīnu nosaukumu, ražošanas gadu, cenu un tehnisko stāvokli. Pieņemsim arī, ka tabulai ir pievienots daudz informācijas un ka bieži veicat meklēšanu, vaicājumos iekļaujot gada lauku. Lai vaicājumu rezultāti tiktu atgriezti ātrāk, varat izveidot indeksu gada laukam, rīkojoties šādi:

  1. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  2. Aizveriet dialoglodziņu Tabulas rādīšana.

  3. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  4. Ierakstiet šādu SQL priekšrakstu:

    CREATE INDEX YearIndex ON Auto (Gads)

  5. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Uz lapas sākumu

Ierobežojuma vai relācijas izveidošana

Nosakot ierobežojumu, tiek izveidots loģisks nosacījums, kuram ir jāatbilst laukam vai lauku kombinācijai, kad tajos tiek ievadītas vērtības. Piemēram, ierobežojums UNIQUE neļauj laukā, uz ko tas attiecas, ievadīt vērtību, kas sakrīt ar kādu citu laukā esošu vērtību.

Relācijas ir veida ierobežojumu, kas attiecas uz lauka vērtības vai laukiem citā tabulā, lai noteiktu, vai vērtība var ievietot ierobežotas lauka vai lauku kombinācija kombinācija.

Lai izveidotu ierobežojumu, komandā CREATE TABLE vai ALTER TABLE izmantojiet klauzulu CONSTRAINT. Ir divu veidu klauzulas CONSTRAINT: vienas ir paredzētas ierobežojuma izveidošanai atsevišķam laukam, bet otras — ierobežojuma izveidošanai vairākiem laukiem.

Ierobežojumi vienam laukam

Vienam laukam paredzētai klauzulai CONSTRAINT ir jāatrodas tūlīt aiz ierobežotā lauka definīcijas, un tās sintakse ir šāda:

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

Pieņemsim, ka tabulā ar nosaukumu Auto ir lauki ar jūs interesējošu automašīnu nosaukumu, ražošanas gadu, cenu un tehnisko stāvokli. Pieņemsim arī, ka bieži aizmirstat ievadīt automašīnas tehnisko stāvokli raksturojošu vērtību, lai gan vienmēr vēlaties reģistrēt šo informāciju. Lai izveidotu lauka Stāvoklis ierobežojumu, kas neļauj atstāt šo lauku tukšu, rīkojieties šādi:

  1. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  2. Aizveriet dialoglodziņu Tabulas rādīšana.

  3. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  4. Ierakstiet šādu SQL priekšrakstu:

    ALTER TABLE Auto ALTER COLUMN Stāvoklis TEXT CONSTRAINT ConditionRequired NOT NULL

  5. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Pieņemsim, ka, pēc tam tajā pašā laikā, jūs paziņojums nosacījumu lauks, kurā jābūt tādam pašam ir daudz līdzīgas vērtības. Piemēram, daži automašīnu ir nosacījums vērtība ir slikta un citiem ir vērtība ir slikta. Pēc vērtības iztīrīt tā, ka tie ir konsekventu, var izveidot tabulu, ar nosaukumu CarCondition, ar vienu lauku, nosaukta nosacījumu, kurā ir visas vērtības, kuras vēlaties izmantot automašīnu nosacījums:

  1. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  2. Aizveriet dialoglodziņu Tabulas rādīšana.

  3. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  4. Ierakstiet šādu SQL priekšrakstu:

    CREATE TABLE Auto_stāvoklis (Stāvoklis TEXT(10))

  5. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

  6. Lai jaunajā tabulā AutoStāvoklis ievietotu tabulas Auto lauka Stāvoklis vērtības, SQL skata objektu cilnē ierakstiet šādu SQL priekšrakstu:

    INSERT INTO AutoStāvoklis SELECT DISTINCT Stāvoklis FROM Auto;

    Piezīme.: SQL priekšraksta šajā darbībā tiek pievienošanas vaicājums. Atšķirībā no datu definīcijas vaicājumu pievienošanas vaicājumu, kas beidzas ar semikolu.

  7. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Lai noteiktu, ka ikvienai jaunai vērtībai, kas tiek ievietota tabulas Auto laukā Stāvoklis, jāatbilst kādai tabulas AutoStāvoklis lauka Stāvoklis vērtībai, izveidojiet tabulu AutoStāvoklis un Auto lauka Stāvoklis relāciju, rīkojoties šādi:

  1. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  2. Aizveriet dialoglodziņu Tabulas rādīšana.

  3. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  4. Ierakstiet šādu SQL priekšrakstu:

    ALTER TABLE Auto ALTER COLUMN Stāvoklis TEXT CONSTRAINT FKeyCondition REFERENCES AutoStāvoklis (Stāvoklis)

  5. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Vairāku lauku ierobežojumi

Klauzula CONSTRAINT vairāklauku var izmantot tikai ārpus klauzula lauka definīcijas un ir šāda sintakse:

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}]}

Apskatīsim vēl viens piemērs, izmantojot automašīnu tabulu. Pieņemsim, ka vēlaties nodrošināt, ka nav divus ierakstus automašīnu tabulā ir vienu un to pašu vērtību kopu nosaukumam, gads, nosacījumu un cenu. Jūs varētu izveidot UNIKĀLU ierobežojumu, kas attiecas uz šo lauku, veicot šādas darbības:

  1. Cilnes Izveidot grupā Cits noklikšķiniet uz Vaicājuma noformējums.

  2. Aizveriet dialoglodziņu Tabulas rādīšana.

  3. Cilnes Noformējums grupā Vaicājuma tips noklikšķiniet uz Datu definīcija.

    Noformējuma režģis ir paslēpts, un tiek rādīta SQL skata objektu cilne.

  4. Ierakstiet šādu SQL priekšrakstu:

    ALTER TABLE Auto ADD CONSTRAINT NoDupes UNIQUE (nosaukums, gads, stāvoklis, cena)

  5. Cilnes Noformējums grupā Rezultāti noklikšķiniet uz Izpildīt.

Uz lapas sākumu

Piezīme.: Mašīntulkošanas atruna. Šo rakstu ir tulkojusi datorsistēma bez cilvēka iejaukšanās. Microsoft piedāvā šos mašīntulkojumus, lai palīdzētu angliski nerunājošajiem lietotājiem izmanot saturu par Microsoft produktiem, pakalpojumiem un tehnoloģijām. Tā kā šis raksts ir mašīntulkots, tajā var būt leksikas, sintakses un gramatikas kļūdas.

Paplašiniet savas prasmes
Iepazīties ar apmācību
Esiet pirmais, kas saņem jaunās iespējas
Pievienoties Office Insider programmai

Vai šī informācija bija noderīga?

Paldies par jūsu atsauksmēm!

Paldies par atsauksmēm! Šķiet, ka varētu būt noderīgi sazināties ar kādu no mūsu Office atbalsta aģentiem.

×