Johdatus SQL-rajoituksiin
SQL-rajoitukset ovat olosuhteita, joita sovelletaan taulukon sarakkeisiin, jotta saraketta voidaan rajoittaa tiettyjen arvojen hyväksymiseen tai vain varmistaa, että jokin sarakkeen arvo täyttää tietyn ehdon. Rajoitukset tarjoavat klassisen mekanismin taulukon tietojen eheyden ja oikeellisuuden säilyttämiseksi.
SQL: ssä meillä on monenlaisia rajoituksia. Katsotaanpa tässä artikkelissa seuraavia muutamia rajoituksia.
- EI TYHJÄ
- TARKISTAA
- AINUTLAATUINEN
- PÄÄAVAIN
- ULKOISEN AVAIN
- DEFAULT
Erilaisia SQL-rajoituksia
1. EI NULL-rajoitus
Tätä rajoitusta käytetään, kun et halua minkään arvon kyseisessä sarakkeessa olevan nolla-arvoa. Tämä tarkoittaa, että emme voi lisätä nolla-arvoa sarakkeeseen lisääessään uutta riviä taulukkoon. Jokaisella tämän sarakkeen kentällä on aina nolla-arvo. Null-arvo tarkoittaa, että tietty kenttä on jätetty tyhjäksi, ja arvot, kuten nolla tai tyhjä tila, eivät kuulu nolla-arvoihin.
Katsotaanpa esimerkkiä, jolla luodaan taulukko nimeltä Työntekijä, jolla on 5 saraketta ja joissa tyhjät, nimi- ja liikkuvat sarakkeet eivät hyväksy NULL-arvoja.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
address VARCHAR(20)
);
2. TARKISTA Rajoitus
Tämä rajoitus rajoittaa arvoja, jotka voidaan syöttää kyseiseen taulukon sarakkeeseen. Ymmärrämme tätä paremmin ottamalla esimerkki kokeen hyppäämisestä. Näiden merkkien arvoalue voi olla vain 35 - 100. Varmistaaksemme, että vain tämän alueen arvot syötetään, voimme luoda CHECK-rajoituksen.
Katsokaamme esimerkkiä TARKASTUSrajoituksen luomisesta työntekijöiden palkoille.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
salary INT CHECK (salary >= 15000 AND salary <= 30000),
address VARCHAR(20)
);
3. Ainutlaatuinen rajoitus
Tätä rajoitusta sovelletaan sen varmistamiseksi, että tietty sarake hyväksyy vain yksilölliset arvot, ja toistuvat arvot eivät ole sallittuja tällaisella sarakkeen rajoituksella. Voimme luoda useita UNIQUE-rajoituksia taulukon eri sarakkeisiin. UNIQUE-rajoitus sallii NULL-arvojen syöttämisen.
Katsokaamme esimerkkiä UNIQUE-rajoituksen täytäntöönpanosta. Tässä esimerkissä luomme työntekijä-taulukkoon matkapuhelimen, jonka on oltava ainutlaatuinen eikä voi hyväksyä samaa matkapuhelinnumeroa kahdesti.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
4. ALKUPERÄINEN RAJOITUS
Tätä rajoitusta käytetään tietyn sarakkeen tai sarakkeiden ryhmän tunnistamiseen, jotka voivat yksiselitteisesti tunnistaa rivin taulukossa. Kun ALKUPERÄINEN RAJOITUS on paikoillaan, millään rivillä ei voi olla päällekkäistä arvoa. Meillä ei voi olla NULL-arvoa tällaiselle sarakkeelle. Vaikka sekä PRIMARY AVAIN -rajoitus että UNIQUE-rajoitus edellyttävät, että arvojen on oltava ainutlaatuisia, käytämme UNIQUE-rajoitusta silloin, kun emme halua julistaa saraketta ensisijaiseksi avaimeksi, mutta haluamme silti, että sarakkeen arvot ovat ainutlaatuisia . Meillä voi olla taulukossa vain yksi PRIMARY KEY -sarake tai sarakeryhmä, mutta voimme julistaa, että monet yksittäiset sarakkeet ovat ainutlaatuisia.
Katsokaamme esimerkkiä työntekijätaulukosta, jolla luodaan yksilölliset työntekijöiden tunnukset, joten voimme julistaa tyhjän sarakkeen ensisijaiseksi avaimeksi.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
5. ULKOISEN AVAIMEN RAJOITUS
Tämä rajoitus auttaa yhden taulukon tietoja luomaan suhteen tietokannan toisen taulukon tietoihin. Vieras avain voi olla yksi sarake tai joukko sarakkeita. Tarkastellaan kahta taulukkoa, työntekijä- ja osastoja. Oletetaan, että meillä on palsta nimeltään kuvattu työntekijä ja lähti osastoilla. Voimme viitata työntekijän poistuneeseen osastoon lähteneisiin osastoihin, jos sarakkeet täsmäävät. Tässä tapauksessa Työntekijän sarakkeesta tulee vieraan avaimen viittaus osasto-taulukon sarakkeeseen, joka on ensisijainen avain.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20),
depicted INT FOREIGN KEY REFERENCES Department(depicted)
);
6. Oletusrajoitus
Tätä rajoitusta käytetään määrittämään taulukon tietyn sarakkeen oletusarvo. Tällä tavoin, jos sarakkeelle ei ole lisätty arvoa nimenomaisesti, tietokantamoottori voi aina viitata määritettyyn oletusarvoon ja lisätä sen sarakkeeseen. Oletetaan, että olemme lisänneet sarakkeen rajoituksella EI NULL ja myös rajoituksella DEFAULT, niin meidän ei tarvitse määritellä oletusarvoa nimenomaisesti. Jopa antamatta oletusarvoa, tietty rivi lisätään taulukkoon.
Katsotaanpa esimerkkiä, jossa olemme kirjoittaneet osoitteen paikan oletusarvoksi 'Intia'.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20) DEFAULT 'India',
depicted INT FOREIGN KEY REFERENCES Department(depicted),
);
johtopäätös
SQL-rajoitukset auttavat kehittäjää määrittelemällä rajoitukset ja säännöt taulukkoon lisättäville tiedoille. Rajoituksia voidaan soveltaa saraketasolla, vain tietyssä sarakkeessa tai taulukotasolla, jossa rajoituksia sovelletaan koko taulukkoon. Nämä rajoitukset rajoittavat sitä, millaista tietoa voidaan lisätä taulukkoon. Tämä takaa taulukon tietojen oikeellisuuden ja johdonmukaisuuden. Jos rajoituksissa määritettyjä sääntöjä rikotaan, toimenpide lopetetaan.
Suositellut artikkelit
Tämä on opas SQL-rajoituksiin. Tässä keskustellaan SQL-rajoitusten johdannosta sekä erityyppisistä SQL-rajoituksista, jotka sisältävät Ei nolla-, Tarkista, Ainutlaatuiset, Ensisijaiset, Ulkomaiset ja Oletusrajoitukset. Voit myös käydä läpi muiden ehdotettujen artikkeleidemme saadaksesi lisätietoja -
- Tietokanta SQL: ssä
- SQL: n käyttö
- Taulukko SQL: ssä
- Vieras avain SQL: ssä
- Ensisijaisen avaimen ja vieraan avaimen vertailu