Hvordan Begrense Verdier i SQL Server 2005

September 10  by Eliza

Begrensninger (regler håndheves av SQL Server 2005) har en viktig måte å sikre dataintegritet. SQL Server 2005 gjør det mulig å begrense de verdiene som er tillatt i en bestemt kolonne, slik at upassende data er ikke tillatt.

SQL Server 2005 støtter fem typer begrensning:

  • Ikke null: Når denne begrensningen er angitt, blir du ikke lov til å ha et felt i en kolonne med ingen data i det.
  • Sjekk: Denne begrensningen angir tillatte verdier. For eksempel vil du kanskje Alderen for ansatte til å være mellom 16 og 65.
  • Unik: Denne begrensningen angir at du ikke kan gjenta verdien i et felt i noe annet felt i samme kolonne.
  • Primærnøkkel: Denne begrensningen spesifiserer en unik identifikator for verdien i et felt, som identifiserer en rad.
  • Fremmednøkkel: Denne begrensningen refererer til en unik identifikator i en annen tabell i databasen.

(Den datatype i tabell designer begrenser også de verdier som tillates i en kolonne, men anses ikke å være en begrensning.)

Når du oppretter en tabell, du vanligvis legge til en primærnøkkel til tabellen. En tabell kan bare ha én primærnøkkel.

Hvis du ikke utpeke en kolonne (eller kombinasjon av kolonner) som primærnøkkel når du oppretter tabellen, kan du angi en primærnøkkel senere, forutsatt at visse vilkår er oppfylt. En kolonne ment som en primærnøkkel kan ikke ha nullverdier og hver verdi i kolonnen må være unikt. Hvis tabellen har data og disse vilkårene ikke er oppfylt, ditt forsøk på å opprette en primærnøkkel på at kolonnen forårsaker en feil og ingen primærnøkkelen er opprettet.

Velg en primærnøkkel når du først opprette en tabell. Ved å gjøre dette unngår du mulige tidkrevende endringer til et bord etter at den inneholder data.

Hvis du ønsker å endre kolonnen (eller kombinasjon av kolonner) som er primærnøkkelen, må du slette primærnøkkelen begrensning på den opprinnelige kolonnen (e) og legge til en primærnøkkel begrensning. Hvis den opprinnelige primærnøkkelen er referert til av en fremmednøkkelbegrensning, må du slette den fremmednøkkelbegrensning først, og deretter slette den opprinnelige primærnøkkel begrensningen.

For å legge til en kontrollbegrensning, gjør du følgende:

  1. Høyreklikk på raden som angir den aktuelle kolonnen.
  2. Velg Sjekk Begrensninger fra kontekstmenyen.
  3. I dialogboksen kontrollbegrensninger boksen, klikker du på knappen Legg til for å legge en ny begrensning.
  4. Klikk på ellipse i Expression rad i høyre rute i kontrollbegrensninger vinduet.

    Den kontrollbegrensninger dialogboksen åpnes.

  5. Skriv inn et uttrykk som angir begrensningen.

    De tillatte uttrykk avhengig av datatype i kolonnen. For eksempel, i en alder kolonne, kan du angi at tillatte alder er mellom 16 og 70 ved hjelp av følgende uttrykk:

Alder> = 16 AND Age <= 70