Srianta ná rialacha a bhíonn i bhfeidhm ag an mbunachar sonraí ar an sonraí i dtáblaí — ag ráthú slándáil an sonraí ag leibhéal an bhunachair (ní i gcód an fheidhmchláir amháin). Na príomhchinn: PRIMARY KEY, FOREIGN KEY, UNIQUE, , , agus .
Srianta ná rialacha a bhíonn i bhfeidhm ag an mbunachar sonraí ar an sonraí i dtáblaí — ag ráthú slándáil an sonraí ag leibhéal an bhunachair (ní i gcód an fheidhmchláir amháin). Na príomhchinn: PRIMARY KEY, FOREIGN KEY, UNIQUE, , , agus .
NOT NULLCHECKDEFAULTCREATE TABLE users (
id INT PRIMARY KEY, -- unique + not null identifier
email VARCHAR(255) UNIQUE NOT NULL, -- must be unique AND present
age INT CHECK (age >= 0 AND age <= 120), -- must satisfy a condition
country VARCHAR(2) DEFAULT 'US', -- default value if not provided
role VARCHAR(20) NOT NULL DEFAULT 'user',
manager_id INT REFERENCES users(id) -- FOREIGN KEY (referential integrity)
);
PRIMARY KEY → uniquely identifies a row (unique + not null, indexed)
FOREIGN KEY → references another table's key (referential integrity)
UNIQUE → no duplicate values allowed in this column
NOT NULL → the column must have a value (can't be NULL)
CHECK → the value must satisfy a condition (age >= 0, status IN (...))
DEFAULT → a value used when none is provided on insert
-- ❌ relying only on application code to enforce uniqueness:
-- a race condition or a bug or a different app could insert a duplicate
-- ✅ a UNIQUE constraint guarantees it at the DB level — ALWAYS enforced,
-- regardless of which code or how many apps access the database
email VARCHAR(255) UNIQUE
Is iad srianta an bhunachair **an líne dhíreach dheiridh" ar chosaint slándáil an sonraí — bíonn siad i bhfeidhm is cuma cad an cód a chuireann sonraí isteach (iomadhúlacht feidhmchláir, scripteanna, athruithe á déanamh de láimh, nó cód lochtach), agus baineann siad le coinníollacha rása a nochann seiceanna ar leibhéal an fheidhmchláir.
CHECK (price > 0) -- prices must be positive
CHECK (status IN ('active', 'inactive')) -- only valid statuses
CHECK (end_date > start_date) -- logical consistency
Bíonn CHECK i bhfeidhm ar rialacha gnó/fearain go díreach sa scéimh.
Tá srianta riachtanach chun slándáil an sonraí a choinneáil — barantas a thabhairt go gcomhlíonn an sonraí i do bhunachar sonraí rialacha (uathúlacht, láithreacht, luachanna bailí, tagairtí bailí) ag leibhéal an bhunachair, rud atá bunúsach do fheidhmchláir iontaofa, agus dá bharr sin tá sé tábhachtach iad a thuiscint.
Tá sé riachtanach na cineálacha srianta (PRIMARY KEY, FOREIGN KEY, UNIQUE, NOT NULL, CHECK, DEFAULT) agus an méid a bhíonn i bhfeidhm ag gach ceann acu a bheith ar eolas agat chun dearadh scéimh cuí a dhéanamh.
Is é an príomhphointe coincheapúil an cén fáth a bhíonn feidhm acu ag leibhéal an bhunachair seachas i gcód an fheidhmchláir amháin: is iad srianta an bhunachair an líne dhíreach dheiridh ar chosaint slándáil an sonraí — bíonn siad i bhfeidhm i gcónaí is cuma cén cód nó cé mhéad feidhmchlár atá ag rochtain ar an sonraí, baineann siad earráidí a bhféadfadh seiceanna ar leibhéal an fheidhmchláir a chailleadh, agus ar an ábhar sin baineann siad le coinníollacha rása nach féidir le bailíochtú ar leibhéal an fheidhmchláir a láimhseáil (m.sh. dhá thaisgirt dhifriúla araon ag foluain seic ar leibhéal an fheidhmchláir ar uathúlacht ach sriant UNIQUE i gceart ag foluain an dúbailí).
Tá baol a bheith ann má bhraithíonn tú ar chód an fheidhmchláir amháin ar integrality; soláthraíonn srianta barúintí ag leibhéal an bhunachair.
Tá tuiscint ar shrianta CHECK chun rialacha fearain/gnó (raonta bailí, luachanna ceadaithe, comhsheasmhacht loighciúil) a bhí i bhfeidhm go díreach sa scéimh a chur i bhfeidhm díreach luachmhar freisin.
Ois gur ábhar criticiúil ar chosc go bhfuil feidhmchláir iontaofa, agus os gur soláthraíonn srianta barantas ag leibhéal an bhunachair a chosnaíonn ar earráidí, coinníollacha rása, agus sonraí neamhchomhsheasmhacha ar bhealach nach féidir le cód an fheidhmchláir amháin a dhéanamh, tá tuiscint ar shrianta — na cineálacha, a nbarantas ar integrality, agus an tábhacht a bhaineann le fheidhm ag leibhéal an bhunachair — tábhachtach, ábhar bunúsach do dhearadh bunachara sonraí daingean agus gnéithe ríthábhachtach ar thógáil feidhmchláir ar réimse a bhí comhsheasmhach agus bailí i gcónaí.