Ang isang simpleng kahulugan ng isang database domain ay ang uri ng data na ginagamit ng isang column sa isang database. Ang uri ng data na ito ay maaaring isang built-in na uri (tulad ng isang integer o isang string) o isang custom na uri na tumutukoy sa mga hadlang sa data.
Pagpasok ng Data at Mga Domain
Kapag naglagay ka ng data sa isang online na anyo ng anumang uri, ito man ay ang iyong pangalan at email o isang aplikasyon sa trabaho, iniimbak ng database ang iyong input sa likod ng mga eksena. Sinusuri ng database na iyon ang iyong mga entry batay sa isang hanay ng mga pamantayan.
Halimbawa, kung maglalagay ka ng ZIP code, inaasahan ng database na makahanap ng limang numero (o limang numero na sinusundan ng gitling pagkatapos ay apat na numero para sa kumpletong ZIP code ng U. S.). Kung ilalagay mo ang iyong pangalan sa isang field ng zip code, magbibigay sa iyo ng error ang database.
Iyon ay dahil sinusubok ng database ang iyong entry laban sa tinukoy na domain para sa field ng zip code. Ang domain ay karaniwang uri ng data na maaaring magsama ng mga opsyonal na paghihigpit.
Ang bawat uri ng database ay nagbibigay ng paraan upang tukuyin ang isang hanay ng mga paghihigpit at panuntunan na namamahala sa pinapayagang data, kahit na hindi ito tinatawag na domain. Tingnan ang dokumentasyon ng iyong database para sa mga detalye.
Pag-unawa sa isang Database Domain
Upang maunawaan ang isang database domain, isaalang-alang natin ang ilang iba pang aspeto ng isang database:
- Ang isang database schema ay tumutukoy sa isang hanay ng mga katangian, na tinatawag ding mga column o field. Ang isang talahanayan na tinatawag na "Impormasyon sa Pakikipag-ugnayan" ay maaaring magsama ng mga katangian para sa FirstName, LastName, JobTitle, StreetAddress, City, State, ZipCode, PhoneNumber, at Email.
- Ang bawat katangian ay nagsasama ng isang domain na tumutukoy sa mga pinahihintulutang halaga, na posibleng kasama ang uri ng data, haba, mga halaga, at iba pang detalye nito.
Halimbawa, maaaring tumukoy ang domain para sa isang attribute na ZipCode ng numeric na uri ng data, gaya ng integer, karaniwang tinatawag na INT o INTEGER, depende sa database. O, maaaring piliin ng isang taga-disenyo ng database na tukuyin ito bilang isang character, karaniwang tinatawag na CHAR. Ang katangian ay maaaring higit pang tukuyin upang mangailangan ng isang partikular na haba, o kung pinapayagan ang isang walang laman o hindi kilalang halaga.
Kapag tinipon mo ang lahat ng elementong tumutukoy sa isang domain, magkakaroon ka ng naka-customize na uri ng data, na tinatawag ding "uri ng data na tinukoy ng user" o isang UDT.
Ano ang Domain Integrity?
Ang mga pinapayagang value ng isang attribute ay nagtatatag ng integridad ng domain, na nagsisiguro na ang lahat ng data sa isang field ay naglalaman ng mga valid na value.
Ang integridad ng domain ay tinukoy ng:
- Ang uri ng data, gaya ng integer, character, o decimal.
- Ang pinapayagang haba ng data.
- Ang hanay, na tumutukoy sa itaas at ibabang mga hangganan.
- Anumang mga hadlang, o limitasyon sa mga pinahihintulutang halaga. Halimbawa, ang isang field ng ZIP code sa U. S. ay maaaring magpatupad ng kumpletong ZIP+4 code o isang buong siyam na digit na code.
- Ang uri ng NULL na suporta (kung ang isang katangian ay maaaring magkaroon ng hindi alam o NULL na halaga).
- Ang default na halaga, kung mayroon man.
- Ang pintor ng format ng petsa, kung naaangkop (halimbawa, dd/mm/yyyy o mm/dd/yyyy).
Paggawa ng Domain
Para sa mga database na gumagamit ng Structured Query Language o isang flavor ng SQL, gamitin ang CREATE DOMAIN SQL command.
Halimbawa, ang execution statement ay gumagawa ng isang ZipCode attribute ng data type CHAR na may limang character. Ang isang NULL, o hindi kilalang halaga, ay hindi pinapayagan. Ang hanay ng data ay dapat nasa pagitan ng 00000 at 99999. Lumilikha iyon ng isang katangian ng ZipCode ng uri ng data na CHAR na may limang character. Ang isang NULL, o hindi kilalang halaga, ay hindi pinapayagan.
GUMAWA NG DOMAIN ZipCode CHAR(5) HINDI NULL CHECK (VALUE >='00000' AT VALUE <='99999')
Ang mga hadlang na ito sa database ay nagtutulak ng error sa isang application na nagsisilbing front-end sa iyong database kapag nilabag ang hadlang, kaya mag-program ng isang error-capture subroutine sa iyong program upang suriin ang katinuan bago ito isipin ng program nang maayos nagdagdag ng impormasyon sa database.