Crearea sau modificarea tabelelor sau indexurilor utilizând o interogare de definiție date

Notă: Dorim să vă oferim cel mai recent conținut de ajutor, cât mai rapid posibil, în limba dvs. Această pagină a fost tradusă automatizat și poate conține erori gramaticale sau inexactități. Scopul nostru este ca acest conținut să vă fie util. Vă rugăm să ne spuneți dacă informațiile v-au fost utile, în partea de jos a acestei pagini. Aici se află articolul în limba engleză, ca să îl puteți consulta cu ușurință.

Puteți să creați și modificați tabele, restricțiile, indexurile și relațiile în Access, scrieți interogări de definiție date în vizualizarea SQL. Acest articol explică de definiție date interogări și cum să le utilizați pentru a crea tabele, restricțiile, indexurile și relații. Acest articol, de asemenea, vă poate ajuta să decideți când să utilizați o interogare de definiție date.

În acest articol

Prezentare generală

Crearea sau modificarea unui tabel

Crearea unui index

Creați o restricție sau o relație

Prezentare generală

Spre deosebire de alte interogările Access, o interogare de definiție date nu regăsiți date. În schimb, o interogare de definiție date utilizează Data Definition Language crearea, modificarea sau ștergerea obiectelor bazei de date.

Notă: Limba de definiție date (DDL) face parte din interogare SQL (limbaj structurat).

Interogările de definiție date poate fi foarte convenabil. În mod regulat puteți șterge și recrea părți ale pe schema bazei de date doar rulând unele interogări. Luați în considerare utilizarea unei interogări de definiție date dacă sunteți familiarizat cu instrucțiunile SQL și intenționați să ștergeți și să creați din nou anumite tabele, restricțiile, indexuri sau relații.

Avertisment: Utilizarea interogărilor de definiție date pentru a modifica obiectele bazei de date poate fi riscant, deoarece acțiuni nu sunt însoțit de casete de dialog de confirmare. Dacă faceți o greșeală, puteți pierde datele sau din greșeală modificarea proiectării unui tabel. Fiți atent atunci când utilizați o interogare de definiție date pentru a modifica obiecte din baza de date. Dacă nu sunteți responsabil pentru întreținerea baza de date pe care îl utilizați, ar trebui să consultați administratorul bazei de date înainte de a rula o interogare de definiție date.

Important: Faceți o copie de rezervă a toate tabelele implicate înainte de a rula o interogare de definiție date.

DDL cuvinte cheie

Cuvinte cheie

Utilizați

CREATE

Crearea unui index sau tabelul pe care nu există deja.

ALTER

Modificați un tabel existent sau o coloană.

DROP

Ștergeți un tabel existent, o coloană sau o restricție.

ADD

Adăugați o coloană sau o restricție într-un tabel.

COLUMN

Utilizați cu Adăugare, ALTER, sau DROP

CONSTRAINT

Utilizați cu Adăugare, ALTER, sau DROP

INDEX

Utilizarea cu crearea

TABLE

Utilizarea cu ALTER, crearea sau DROP

Începutul paginii

Crearea sau modificarea unui tabel

Pentru a crea un tabel, utilizați o comandă de creare tabel. O comandă de creare tabel are următoarea sintaxă:

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

Numai obligatoriu elemente de o comandă de creare tabel sunt comanda Creare tabel propriu-zis și numele tabelului, dar, de obicei, este util să definiți unele câmpuri sau alte aspecte ale tabelului. Luați în considerare acest exemplu simplu.

Să presupunem că doriți să creați un tabel pentru a stoca numele, an și prețul cu mașini utilizate care au în vedere pentru achiziționare. Doriți să permiteți până la 30 de caractere pentru numele și 4 caractere pentru anul. Pentru a utiliza o interogare de definiție date pentru a crea tabelul, procedați astfel:

Notă: Mai întâi trebuie să activați conținutul bazei de date pentru ca o interogare de definiție date pentru a rula:

  • În Bara de mesaje, faceți clic pe Activare conținut.

Crearea unui tabel

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    Creare tabel mașini (nume TEXT(30), an TEXT(4), preț monedă)

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Modificarea unui tabel

Pentru a modifica un tabel, utilizați o comandă ALTER TABLE. Puteți utiliza o comandă ALTER TABLE pentru adăugarea, modificarea sau drop (eliminarea) coloanelor sau restricții. O comandă ALTER TABLE are următoarea sintaxă:

ALTER TABLE table_name predicate

în cazul în care predicat poate fi oricare dintre următoarele:

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

ADD CONSTRAINT multifield_constraint

ALTER COLUMN field type[(size)]

DROP COLUMN field

DROP CONSTRAINT constraint

Să presupunem că doriți să adăugați un câmp text de 10 caractere pentru a stoca informații despre starea de fiecare mașină. Puteți face următoarele:

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    ALTER tabel mașini Adăugare coloană condiție TEXT(10)

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Începutul paginii

Crearea unui index

Pentru a crea un index într-un tabel existent, utilizați o comandă CREATE INDEX. O comandă CREATE INDEX are următoarea sintaxă:

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

Numai elementele necesare sunt comanda Creare INDEX, numele de index, argumentul ON, nume de tabel care conține câmpurile pe care doriți să se indexeze și lista de câmpuri vor fi incluse în indexul.

  • Cauzele argumentul DESC index pentru a fi create în ordine descrescătoare, care poate fi util dacă rulați frecvent interogările care arată pentru începutul valorile pentru câmpul indexate sau care sortați câmpul indexate în ordine descrescătoare. În mod implicit, se creează un index în ordine ascendentă.

  • Argumentul cu principal stabilește indexate câmpul sau câmpurile ca cheie primară a tabelului.

  • Argumentul cu interzicerea NULL determină index pentru a solicita introduse o valoare pentru câmpul indexate-Adică, valorile null nu sunt permise.

Să presupunem că aveți un tabel denumit mașini cu câmpuri care stochează numele, an, preț și condiție cu mașini utilizate care au în vedere pentru achiziționare. De asemenea, să presupunem că tabelul are devin mari și care includ frecvent câmpul an în interogări. Puteți crea un index în câmpul de an pentru a vă ajuta interogările returna rezultate mai rapid, utilizând următoarea procedură:

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    CREAREA INDEX activat YearIndex mașini (an)

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Începutul paginii

Creați o restricție sau o relație

O restricție stabilește o condiție logice care un câmp sau o combinație de câmpuri trebuie să îndeplinească atunci când valorile sunt inserate. De exemplu, o restricție unice împiedică câmpul constrânsă acceptarea o valoare care să dublați o valoare existent pentru câmpul.

O relație este un tip de restricție care face referire la valori a unui câmp sau combinație de câmpuri din alt tabel pentru a determina dacă o valoare pot fi inserate în câmpul constrânsă sau combinație de câmpuri. Nu utilizați un cuvânt cheie speciale pentru a indica faptul că o restricție este o relație.

Pentru a crea o restricție, utilizați o clauza CONSTRAINT într-o comandă de creare tabel sau ALTER TABLE. Există două tipuri de restricție clauze: una pentru a crea o restricție de pe un singur câmp și alta pentru a crea o restricție pe mai multe câmpuri.

Restricțiile legate de câmp unic

Un singur câmp restricție clauză urmează imediat definiția câmpul care constrânge și are următoarea sintaxă:

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

Să presupunem că aveți un tabel denumit mașini cu câmpuri care stochează numele, an, preț și condiție cu mașini utilizate care au în vedere pentru achiziționare. De asemenea, să presupunem că frecvent uitați la o valoare pentru mașină condiții de intrare și că oricând doriți să înregistrați aceste informații. Puteți să creați o restricție pe câmpul de stare care vă împiedică să ieșiți din câmpul necompletat, utilizând următoarea procedură:

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    ALTER tabel mașini ALTER coloana stare TEXT restricție ConditionRequired NENULE

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Acum, să presupunem că, după un timp, puteți observa că există mai multe valori similare în câmpul de stare care ar trebui să fie identice. De exemplu, unele dintre mașini au o valoare de condiții de slabă și altele au o valoare de rău.

Notă: Dacă doriți să urmeze împreună cu procedurile rămase, adăugați câteva date false la tabelul de mașini pe care l-ați creat în ultimii pași.

După ce vă curăța valorile astfel încât să fie mai uniform, puteți crea un tabel, denumită CarCondition, cu un câmp denumit condiții, care conține toate valorile pe care doriți să îl utilizați pentru starea de mașini:

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    Creare tabel CarCondition (condiție TEXT(10))

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

  6. Creați o cheie primară pentru tabelul utilizând o instrucțiunea ALTER TABLE:

    ALTER tabel CarCondition ALTER coloana stare TEXT restricție CarConditionPK cheie primară

  7. Pentru a insera valorile din câmpul de stare din tabelul mașini în tabelul CarCondition nou, tastați următoarele SQL în fila obiect SQL vizualizare:

    Inserați în CarCondition selectați condiția distincte din mașini;

    Notă: Declarația SQL în acest pas este o interogare de adăugare. Spre deosebire de o interogare de definiție date, o interogare de Adăugare se termină cu un punct și virgulă.

  8. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Crearea unei relații utilizând o restricție

Pentru a solicita că orice valoare nouă inserat în câmpul de stare din tabelul mașini se potrivește cu o valoare a câmpului de condiție din tabelul CarCondition, puteți crea apoi o relație între CarCondition și mașini pe câmp denumit condiții, utilizând următoarele procedură:

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    ALTER tabel mașini ALTER coloana stare TEXT restricție FKeyCondition referințe CarCondition (condiții)

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Restricțiile legate de mai multe câmpuri

O clauză de restricție mai multe câmpuri pot fi utilizate numai în afara o clauză definiție de câmp și are următoarea sintaxă:

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

Luați în considerare un alt exemplu care utilizează tabelul mașini. Să presupunem că doriți să vă asigurați că există două înregistrări în tabelul mașini au același set de valori pentru nume, an, stare și prețul. Puteți crea o restricție unice care se aplică la aceste câmpuri, utilizând următoarea procedură:

  1. Pe fila Creare , în grupul macrocomenzi și cod , faceți clic pe Proiectare interogare.

  2. Închideți caseta de dialog Afișare tabel.

  3. Pe fila Proiectare , în grupul Tip interogare , faceți clic pe Definiție date.

    În grila de proiectare este ascuns și se afișează fila obiect SQL vizualizare.

  4. Tastați următoarea declarație SQL:

    ALTER TABLE mașini adăugarea restricție NoDupes unice (nume, an, condiție, preț)

  5. În fila Proiectare, în grupul Rezultate, faceți clic pe Rulare.

Începutul paginii

Extindeți-vă competențele Office
Explorați instruirea
Fiți primul care obține noile caracteristici
Alăturați-vă utilizatorilor Office Insider

Au fost utile aceste informații?

Vă mulțumim pentru feedback!

Vă mulțumim pentru feedback! Se pare că ar fi util să luați legătura cu unul dintre agenții noștri de asistență Office.

×