📚 கற்றல் முதன்மை க.பொ.த. (சா/த) க.பொ.த. (உ/த) பிற 🌐 lang_switch nav_login
O/L · தகவல் தொழினுட்பவியல் (ICT) · தரம் 10 · தரவுத்தளம்
💻 தரம் 10 · அலகு 9

தரவுத்தளம்

Databases (Intro)
★★★★★ MCQDBMSStructured

1. தரவுத்தளம் எதற்காக? (Why Databases?)

ஒரு பாடசாலையில் ஆயிரம் மாணவர்களின் விவரங்களைப் பேணுவதை எண்ணிப்பாருங்கள் — பெயர், அனுமதி இலக்கம், பிறந்த திகதி, வகுப்பு, பெற்றோர் தொடர்பு, விளையாட்டு, பரீட்சை மதிப்பெண்கள். இந்த விவரங்களை தாள்களில் அல்லது சிதறிய கோப்புகளில் வைக்கும்போது தேடுதல் கடினம், ஒரே தகவல் பல இடங்களில் மீள்நிகழ்தல் (data redundancy), ஒன்றை மாற்றினால் மற்றதை மாற்ற மறப்பது போன்ற சிக்கல்கள் ஏற்படும்.

தரவுத்தளம் (Database) என்பது தொடர்புடைய தரவுகளை (Related data) ஒழுங்கான முறையில், மீள்நிகழ்தல் குறைவாக, இலகுவாக மீட்கக்கூடிய வடிவத்தில் சேமிக்கும் ஓர் தொகுப்பாகும். இது ஒரு கோப்பு அல்ல; பல அட்டவணைகளின் (Tables) தொகுப்பாகும்.

அடிப்படை வரைவிலக்கணம்
தரவுத்தளம் என்பது ஒன்றுக்கொன்று தொடர்புடைய தரவுகளின் ஒழுங்கமைக்கப்பட்ட தொகுப்பாகும். தரவுத்தள முகாமைத்துவ மென்பொருள் (DBMS) மூலம் இது உருவாக்கப்படுகிறது, பேணப்படுகிறது மற்றும் பயன்படுத்தப்படுகிறது.

தரவுத்தளம் பயன்படுத்தப்படும் இடங்கள்

2. தரவு, தகவல், அறிவு (Data, Information, Knowledge)

பின்வரும் சொற்கள் தினசரி உரையில் ஒரே பொருளாக கருதப்பட்டாலும், தரவுத்தளப் பாடத்தில் வேறுபாடு உண்டு.

தரவு (Data)

பதப்படுத்தப்படாத, தனிமையாக நிற்கும் உண்மைகள் அல்லது எண்கள். அவற்றுக்கு உடனடிப் பொருள் இல்லை.

உதாரணம்: 25, "கவிதா", 1426

தகவல் (Information)

தரவு பதப்படுத்தப்பட்டு, ஒழுங்கமைக்கப்பட்டு, புரியக்கூடிய பொருள் கொண்டவை.

உதாரணம்: "மாணவி கவிதா (அனு. இல. 1426) தனது வயது 25-இல் பட்டம் பெற்றார்."

அறிவு (Knowledge)

தகவல்களை அனுபவத்துடன் இணைத்து புதிய முடிவெடுப்புக்குப் பயன்படுத்தும் ஆற்றல்.

உதாரணம்: "எமது பாடசாலையில் கணினி வகுப்பு மாணவர் அதிகம் சித்தியடைகின்றனர்."

செய்து பாருங்கள் — தரவா? தகவலா?

பின்வருவன தரவா அல்லது தகவலா எனக் கூறுக:

  1. "38°C" → தரவு (தனியாக நின்றால்).
  2. "இன்றைய யாழ்ப்பாணத்தின் வெப்பநிலை 38°C" → தகவல்.
  3. "S001, S002, S003" → தரவு.
  4. "கிரிக்கெட் அணியில் 11 அங்கத்தவர்கள் உள்ளனர்" → தகவல்.

3. பாரம்பரிய கோப்பு முறைமை vs தரவுத்தளம்

தரவுத்தளம் தோன்றுவதற்கு முன், ஒவ்வொரு துறையும் தனித்தனிக் கோப்புகளை வைத்திருந்தது. பாடசாலையில் — அலுவலகம் ஒரு கோப்பு, ஆசிரியர் அறை ஒரு கோப்பு, விளையாட்டுத் துறை ஒரு கோப்பு. ஒரு மாணவியின் முகவரியை மாற்றினால், மூன்று கோப்புகளிலும் தனித்தனியே மாற்றப்பட்டது. இது தான் பாரம்பரிய கோப்பு முறைமை (Traditional File System).

பாரம்பரிய கோப்பு முறைமைதரவுத்தள முறைமை
தரவு பல இடங்களில் மீள்நிகழ்தல் (Data redundancy) அதிகம்.மீள்நிகழ்தல் குறைவு — ஒரே இடத்தில் சேமிப்பு.
தரவு முரண்பாடு (Data inconsistency) ஏற்படும்.ஒரு இடத்தில் மாற்றினால் எல்லாரும் காண்பர்.
பல பயனர்கள் ஒரே நேரத்தில் அணுகுவது கடினம்.பல பயனர்கள் ஒரே நேரத்தில் அணுகலாம் (Multi-user).
பாதுகாப்புக் கட்டுப்பாடு குறைவு.பயனர் அடிப்படை அணுகல் அதிகாரம் (Access control).
தரவு பகிர்ந்துகொள்ள கடினம்.தரவு பகிர்வு (Data sharing) எளிதானது.

4. அட்டவணை, பதிவு, புலம் (Table, Record, Field)

தரவுத்தளத்தின் அடிப்படை அலகு அட்டவணை (Table) ஆகும். அட்டவணை வரிசைகளாகவும் (Rows) நெடுக்கைகளாகவும் (Columns) ஒழுங்கமைக்கப்பட்டுள்ளது.

அனுமதி இலக்கம்மாணவர் பெயர்வகுப்புபிறந்த திகதி
1426கவிதா பிரபாஷ்வர்10A2005.05.23
1428முஹம்மட் மரிக்கார்10A2005.02.07
1429ஜனிற் அவேஷ்க10B2005.04.15

↑ ஒரு வரிசை = ஒரு பதிவு. ஒரு நெடுக்கை = ஒரு புலம். பச்சை = முதன்மை விசை.

5. தரவு வகைகள் (Data Types)

ஒவ்வொரு புலத்திற்கும் சேமிக்கப்படும் தரவின் வகையை முன்கூட்டியே தீர்மானிக்க வேண்டும். இதனால் தவறான தரவு உள்ளீடு தடுக்கப்படும்; சேமிப்பகம் சிக்கனமாகப் பயன்படுத்தப்படும்.

தரவு வகைவிளக்கம்உதாரணம்
பாடம் (Text / Character)எழுத்துக்கள், சொற்கள், வசனங்கள்."கவிதா", "10A"
எண் (Number / Numeric)கணக்கீடு செய்யக்கூடிய எண்கள் — முழு எண், தசம எண்.15, 87.5
நாணயம் (Currency)பணம் சார்ந்த எண்கள் — நாணய அடையாளத்துடன்.Rs. 1,250.00
திகதி / நேரம் (Date / Time)நாள், மாதம், வருடம், நேரம்.2005.05.23, 7:35 a.m.
பூலியன் (Boolean)இரு மதிப்புகள் மட்டும் — உண்மை (True) / பொய் (False).ஆம் / இல்லை
செய்து பாருங்கள் — பொருத்தமான தரவு வகை

பின்வரும் புலங்களுக்கு பொருத்தமான தரவு வகை யாது?

  • மாணவர் பெயர் → பாடம் (Text)
  • வயது → எண் (Number)
  • பாடச் சீருடை வாங்கிய தொகை → நாணயம் (Currency)
  • பாடசாலை சேர்ந்த திகதி → திகதி (Date)
  • போக்குவரத்துத் தாங்கல் வழங்கப்படுகிறதா? → பூலியன் (Boolean)

6. முதன்மை விசை மற்றும் வெளி விசை (Primary Key & Foreign Key)

முதன்மை விசை (Primary Key) என்பது ஒரு அட்டவணையில் ஒவ்வொரு பதிவையும் தனித்துவமாக (Uniquely) அடையாளம் காட்டும் புலமாகும். இரு பதிவுகளுக்கு ஒரே முதன்மை விசை இருக்க முடியாது; அது வெற்று (NULL) ஆகவும் இருக்க முடியாது.

முதன்மை விசையின் இரு பண்புகள்
1. தனித்துவம் (Unique) — மீள்நிகழாது.
2. வெற்றில்லை (Not Null) — மதிப்பு கட்டாயம்.

உதாரணமாக, மாணவர் அட்டவணையில் அனுமதி இலக்கம் முதன்மை விசையாகப் பயன்படும். இரு மாணவருக்கு ஒரே அனுமதி இலக்கம் ஒதுக்கப்பட மாட்டாது. பெயர் முதன்மை விசையாக இருக்க முடியாது — ஏனெனில் இரு மாணவர்கள் ஒரே பெயர் கொண்டிருக்கலாம்.

வெளி விசை (Foreign Key) என்பது ஒரு அட்டவணையில் உள்ள ஒரு புலம், அது வேறொரு அட்டவணையின் முதன்மை விசையைச் சுட்டிக்காட்டும். இதன் மூலம் அட்டவணைகளுக்கிடையே தொடர்புநிலை (Relationship) உருவாக்கப்படுகிறது.

உதாரணம் — மாணவர் & விளையாட்டு

மாணவர் அட்டவணை
அனுமதி இலக்கம்பெயர்பிறந்த திகதிவிளையாட்டு இலக்கம்
1426கவிதா2005.05.23S002
1428முஹம்மட்2005.02.07S001
1429ஜனிற்2005.04.15S002
விளையாட்டு அட்டவணை
விளையாட்டு இலக்கம்விளையாட்டுஅங்கத்தவர் எண்ணிக்கை
S001கிரிக்கெட்11
S002கால்பந்து16
S003கூடைப்பந்து6

பச்சை = முதன்மை விசை. நீலம் = வெளி விசை (மற்றொரு அட்டவணையின் முதன்மை விசையைச் சுட்டுகிறது).

செய்து பாருங்கள் — விசை அடையாளம்

நூலகத் தரவுத்தளத்தில் இரு அட்டவணைகள்: புத்தகம் (புத்தக இல., தலைப்பு, ஆசிரியர்) மற்றும் கடன் (கடன் இல., புத்தக இல., அனுமதி இல., திகதி).

  • புத்தகம் அட்டவணையின் முதன்மை விசை → புத்தக இல.
  • கடன் அட்டவணையின் முதன்மை விசை → கடன் இல.
  • கடன் அட்டவணையின் வெளி விசை → புத்தக இல. (புத்தகம் அட்டவணையைச் சுட்டுகிறது)

7. தொடர்புநிலைகள் (Relationships)

இரு அட்டவணைகளுக்கிடையே மூன்று வகையான தொடர்புநிலைகள் ஏற்படக்கூடும்.

(அ) ஒன்றுக்கு ஒன்று (One-to-One)

ஒரு அட்டவணையின் ஒரு பதிவு, மற்றொரு அட்டவணையின் ஒரே ஒரு பதிவுடன் தொடர்புபடும். உதாரணம்: ஒரு குடிமகனுக்கு ஒரே ஒரு தேசிய அடையாள அட்டை.

குடிமகன் 1 : 1 NIC

(ஆ) ஒன்றுக்குப் பல (One-to-Many)

ஒரு அட்டவணையின் ஒரு பதிவு, மற்றொரு அட்டவணையின் பல பதிவுகளுடன் தொடர்புபடும். உதாரணம்: ஒரு விளையாட்டுக்கு பல மாணவர்கள்; ஒரு மாணவருக்கு ஒரே ஒரு விளையாட்டு.

விளையாட்டு 1 : பல (1 : M) மாணவர்

(இ) பலவிற்குப் பல (Many-to-Many)

இரண்டு அட்டவணைகளின் பல பதிவுகள் பல பதிவுகளுடன் தொடர்புபடும். உதாரணம்: ஒரு மாணவர் பல விளையாட்டுகளில் பங்கேற்கலாம்; ஒரு விளையாட்டில் பல மாணவர்கள் பங்கேற்கலாம்.

பலவிற்குப் பல தொடர்புநிலை நேரடியாகச் செயற்படுத்த முடியாது. இதனை இணைப்பு அட்டவணை (Junction / Linking Table) மூலம் இரண்டு ஒன்றுக்குப் பல தொடர்புகளாக மாற்றியமைக்கப்படுகின்றது.

மாணவர் 1 : M மாணவர்_விளையாட்டு (இணைப்பு அட்டவணை) M : 1 விளையாட்டு
செய்து பாருங்கள் — தொடர்புநிலை அடையாளம்
  • ஒரு வகுப்பாசிரியர் ↔ ஒரு வகுப்பு → 1 : 1
  • ஒரு வகுப்பு ↔ பல மாணவர்கள் → 1 : பல (1 : M)
  • பல மாணவர்கள் ↔ பல பாடங்கள் → பல : பல (M : N) — இணைப்பு அட்டவணை தேவை.

8. தரவுத்தள முகாமைத்துவ மென்பொருள் (DBMS)

தரவுத்தளத்தை உருவாக்க, பேண, புதுப்பிக்க, தரவை மீட்க உதவும் சிறப்பு மென்பொருளே தரவுத்தள முகாமைத்துவ மென்பொருள் (Database Management System – DBMS) எனப்படுகின்றது. பயனர் நேரடியாக தரவுத்தளத்துடன் தொடர்புகொள்ளாமல், DBMS ஊடாகவே தொடர்புகொள்கிறார்.

இலவச / திறந்த மூல DBMS

  • MySQL
  • MariaDB
  • LibreOffice Base
  • SQLite

தனியுரிமை (Proprietary) DBMS

  • Microsoft Access
  • Microsoft SQL Server
  • Oracle Database
  • IBM DB2

DBMS-இன் பிரதான பணிகள்

  1. புதிய தரவுத்தளம் / அட்டவணை உருவாக்குதல்.
  2. தரவு உள்ளீடு, புதுப்பித்தல், அகற்றுதல்.
  3. வினவல்கள் (Queries) மூலம் தரவு மீட்டெடுத்தல்.
  4. பாதுகாப்பு — பயனர் அடிப்படை அணுகல் கட்டுப்பாடு.
  5. தரவு ஒருமைப்பாடு (Data integrity) பேணல்.
  6. காப்புப் பிரதி (Backup) மற்றும் மீட்பு (Recovery).

9. தரவுத்தள வடிவமைப்பு படிமுறை

தரவுத்தளம் உருவாக்க பின்பற்ற வேண்டிய படிகள்

  1. தேவையை இனங்காண்க — எந்தத் தகவல்களைச் சேமிக்க வேண்டும்?
  2. உருக்களை (Entities) அடையாளம் காண்க — மாணவர், விளையாட்டு, புத்தகம் போன்றவை.
  3. ஒவ்வொரு உருவுக்கும் புலங்களை (Fields) தீர்மானிக்க.
  4. ஒவ்வொரு புலத்துக்கும் பொருத்தமான தரவு வகையைத் தீர்மானிக்க.
  5. முதன்மை விசையை ஒவ்வொரு அட்டவணைக்கும் தேர்வுசெய்க.
  6. அட்டவணைகளுக்கிடையே தொடர்புநிலையை வரையறுக்க — வெளி விசை மூலம்.
  7. பலவிற்குப் பல தொடர்பு இருந்தால் இணைப்பு அட்டவணை சேர்க்க.
  8. DBMS-இல் அட்டவணைகளை உருவாக்கி, தரவை உள்ளிட்டு, வினவல்களைச் சோதிக்க.

உதாரண வடிவமைப்பு — பாடசாலை நூலகம்

அட்டவணைபுலங்கள்முதன்மை விசை
புத்தகம்புத்தக இல., தலைப்பு, ஆசிரியர், பதிப்பகம்புத்தக இல.
உறுப்பினர்உறுப். இல., பெயர், வகுப்பு, தொடர்பு இலக்கம்உறுப். இல.
கடன்கடன் இல., புத்தக இல. (FK), உறுப். இல. (FK), திகதிகடன் இல.

↑ கடன் அட்டவணையில் இரண்டு வெளி விசைகள் உள்ளன — புத்தகம் மற்றும் உறுப்பினருடன் தொடர்புபடுத்துகின்றன.

செய்து பாருங்கள் — மருந்தகத் தரவுத்தளம் வடிவமைப்பு

ஒரு கிராமிய மருந்தகத்துக்கு தரவுத்தளம் வடிவமைக்க முதல் மூன்று படிகளை எழுதுங்கள்.

  1. உருக்கள்: மருந்து, வாடிக்கையாளர், விற்பனை.
  2. புலங்கள்:
    • மருந்து — மருந்து இல. (PK), பெயர், விலை, காலாவதி திகதி.
    • வாடிக்கையாளர் — வாடி. இல. (PK), பெயர், தொடர்பு இல.
    • விற்பனை — விற்பனை இல. (PK), மருந்து இல. (FK), வாடி. இல. (FK), திகதி, அளவு.
  3. தொடர்புநிலை: மருந்து — விற்பனை (1:M); வாடிக்கையாளர் — விற்பனை (1:M).

10. தரவுத்தளத்தின் நன்மைகள் — சுருக்கம்

📝 பரீட்சை வினாக்கள் (Past paper practice)

உண்மையான பரீட்சை வடிவம் — முதலில் உங்களே எழுதி, பின் மாதிரி விடை பார்க்க.

Paper I — பஹுவிடைத் தெரிவு வினாக்கள் (1 புள்ளி வீதம்)
Databases தொடர்பான MCQ பயிற்சி — 2017.
G.C.E. O/L 2017 — Paper I
  • (a) 35. தரவுத்தளத்தில் (database) ஒரு அட்டவணையில் (table) ஒவ்வொரு வரிசையும் எதை குறிக்கிறது?

    (A) புலம் (Field)
    (B) பதிவு (Record)
    (C) நெடுவரிசை (Column)
    (D) தரவுத்தளம் (Database) (1 புள்ளி)
  • (b) 36. SQL இல் தரவுகளை தேர்வு செய்ய (select) பயன்படும் கட்டளை எது?

    (A) FIND
    (B) GET
    (C) SELECT
    (D) SEARCH (1 புள்ளி)
Paper I — பஹுவிடைத் தெரிவு வினாக்கள் (1 புள்ளி வீதம்)
Databases தொடர்பான MCQ பயிற்சி — 2018.
G.C.E. O/L 2018 — Paper I
  • (a) 13. ஒரு தரவுத்தளத்தில் (database) கீழ்காணும் அட்டவணைகள் உள்ளன:
    Books அட்டவணை:
    ISBN | BookCode | BookName | PublisherID | Edition

    புத்தக அட்டவணையில் ISBN என்பது முதன்மை விசை (primary key). இந்த அட்டவணை தொடர்பான சரியான கூற்று எது?
    (A) BookID
    (B) BookName
    (C) ISBN
    (D) PublisherID (1 புள்ளி)
  • (b) 14. கீழ்காணும் Subject அட்டவணையில் Subject_Code என்பது முதன்மை விசை (Primary key).
    Admission_No | Marks | Subject_Code | Subject_Name
    குறிப்பிட்ட Marks ஐ கொண்டு Subject_Code பெறுவதற்கு உகந்த SQL வினவல் (query) எது?
    (A) கொடுக்கப்பட்ட SQL statement
    (B) SELECT Subject_Code FROM Subject WHERE Marks = [value];
    (C) கொடுக்கப்பட்ட SQL statement
    (D) கொடுக்கப்பட்ட SQL statement (1 புள்ளி)
  • (c) 15. ஒரு நிறுவனத்தின் தரவுத்தளத்தில் Emp_ID, Emp_Name, Designation, Div_ID உள்ளன. கீழ்காணும் Emp_ID மற்றும் Div_ID உள்ள அட்டவணையில்:
    Saman Perera | E1 | Manager | Finance | 2 | Colombo
    Raj Sritwan | E2 | Engineer | Finance | 2 | Colombo
    Mano Samuel | E3 | ICT Manager | ICT | 3 | Colombo
    Fasal Khan | E4 | Accountant | Finance | 2 | Colombo

    இந்த அட்டவணையில் நேரடி சார்பு (functional dependency) தொடர்பான சரியான கூற்று எது?
    (A) Emp_ID → Emp_Name, Designation, Div_ID
    (B) Div_ID → Division_No, Division_Name
    (C) Emp_ID → Division_Name
    (D) A, B, C அனைத்தும் (1 புள்ளி)
Paper I — பஹுவிடைத் தெரிவு வினாக்கள் (1 புள்ளி வீதம்)
Databases தொடர்பான MCQ பயிற்சி — 2019.
G.C.E. O/L 2019 — Paper I
  • (a) 24. தரவுத்தளத்தில் (Database) ஒவ்வொரு பதிவையும் (Record) தனித்துவமாக அடையாளம் காட்டும் புலம் (Field) எது?
    (A) Foreign Key
    (B) Primary Key
    (C) Index Key
    (D) Unique Key (1 புள்ளி)
  • (b) 25. SQL இல் தரவை வரிசைப்படுத்த (sort) பயன்படும் வாக்கியம் எது?
    (A) SORT BY
    (B) ORDER BY
    (C) ARRANGE BY
    (D) GROUP BY (1 புள்ளி)
  • (c) 26. தரவுத்தள அட்டவணையில் (மாணவர் அட்டவணை) Student ID, FirstName, LastName என்ற புலங்கள் உள்ளன. Student ID ஐ Primary Key ஆக அமைக்கும் காரணம் என்ன?
    (A) அது அனைத்து மாணவர்களுக்கும் ஒரே மதிப்பு கொண்டிருக்கும்
    (B) அது ஒவ்வொரு மாணவரையும் தனித்துவமாக அடையாளம் காட்டும்
    (C) அது மாணவரின் பெயரை சேமிக்கும்
    (D) அது எண்கள் மட்டும் கொண்டிருக்கும் (1 புள்ளி)
Paper I — பஹுவிடைத் தெரிவு வினாக்கள் (1 புள்ளி வீதம்)
Databases தொடர்பான MCQ பயிற்சி — 2020.
G.C.E. O/L 2020 — Paper I
  • (a) 19. தரவுத்தளம் (Author_Book) கட்டமைப்பில் முதன்மைகோல் என்ன (primary key)யாவது?
    ஆசிரியர் அட்டவணை:
    AuthorID | FirstName | LastName
    101 | Nimal | Perera
    102 | Viga | Solurian
    103 | Chami | Khan
    104 | Shanti | Rodrigo

    நூல் அட்டவணை (Author_Book) கட்டமைப்பு:
    AuthorID | BookID
    101 | B01
    101 | B02
    102 | B01
    103 | B03

    (1) AuthorID
    (2) BookID
    (3) AuthorID + BookID
    (4) faculty_Share (1 புள்ளி)
  • (b) 20. தரவுத்தளத்தில் கட்டமைப்பு (Author_Book) கட்டமைப்பில் உள்ள Author_Book அட்டவணையில் அயல்சாவி (foreign key) எது?
    (1) AuthorID
    (2) BookID
    (3) AuthorID + BookID
    (4) faculty_Share (1 புள்ளி)
Paper I — கட்டமைப்பு வினாக்கள் (4 புள்ளிகள் வீதம்)
Databases தொடர்பான பயிற்சி — 2021.
G.C.E. O/L 2021 — Paper I (Structured)
  • (a) 21. பின்வரும் அட்டவணையை கவனிக்கவும்:

    வாங்குதல் (Purchase) அட்டவணை:
    Item_ID | Item_Name | Selling_Price
    1001 | Tea bag | 40
    1002 | Milk | 60
    1003 | Chicken oil | 120
    1004 | Coconut | 25

    கொள்முதல் அட்டவணை:
    Item_ID | Supplier_ID | Purchasing_Price
    3001 | 45
    3002 | 11
    3003 | 33
    3004 | 55

    வழங்குனர் (Supplier) அட்டவணை:
    Supplier_ID | Supplier_Name | Supplier_Location
    3001 | Supplier 1 | Matara
    3002 | Supplier 2 | Colombo
    3003 | Supplier 3 | Polonnaruwa
    3004 | Supplier 4 | Hambantota

    (i) Purchase அட்டவணையின் முதன்மை திறவுகோல் (Primary key) என்னென்னவை?
    (ii) கொள்முதல் அட்டவணையில் வெளி திறவுகோல் (Foreign key) என்னவென்று அடையாளம் காணவும்.
    (iii) SQL கட்டளையை பயன்படுத்தி Supplier_Location-ஆனது \'Matara\' என்று உள்ள வழங்குனர்களின் பெயர்களை பெறவும். (4 புள்ளி)
  • (b) 22. பின்வரும் \'Political Science\' என்னும் பாடப் பட்டியலை (Subject list) கவனிக்கவும்:

    Student அட்டவணை:
    Student_ID | Name | Subject_ID | Teacher_Name | Class

    Enroll அட்டவணை:
    Student_ID | Subject_ID | Date

    (i) Student அட்டவணையில் முதன்மை திறவுகோல் (Primary Key) யாது?
    (ii) விவரிக்கவும்: இந்த தரவுத்தளத்தில் தரவு செல்லாமை (Data Redundancy) எங்கு தோன்றுகிறது?
    (iii) தரவு செல்லாமையை (Data Redundancy) நீக்க அட்டவணைகளை எவ்வாறு மறுவடிவமைப்பு செய்வீர்கள்?
    (iv) Political Science-ஐ பயிலும் மாணவர்களின் பெயர்களை பெற SQL கட்டளை எழுதவும். (4 புள்ளி)
Paper I — பஹுவிடைத் தெரிவு வினாக்கள் (1 புள்ளி வீதம்)
Databases தொடர்பான MCQ பயிற்சி — 2023.
G.C.E. O/L 2023 — Paper I
  • (a) 12. பின்வரும் எந்த SQL கட்டளை Bus_station என்ற அட்டவணையிலிருந்து (table) Route_code, Name, Code என்ற தரவுகளை பெறும்?
    (A) SELECT Route_code, Name, Code FROM Bus_station
    (B) SELECT * FROM Bus_station WHERE Route_code, Name
    (C) SELECT Route_code FROM Bus_station WHERE Name AND Code
    (D) SELECT Route_code, Name, Code WHERE Bus_station (1 புள்ளி)
  • (b) 13. ROUTE_INSTANCE என்ற அட்டவணையில் (table) Available_seats என்ற நெடுவரிசையில் 30 க்கும் அதிகமான இடங்கள் உள்ள வரிசைகளை (records) பெற SQL கட்டளை எது?
    (A) SELECT * FROM ROUTE_INSTANCE WHERE Available_seats > 30
    (B) SELECT * FROM ROUTE_INSTANCE WHERE Available_seats = 30
    (C) SELECT * FROM ROUTE_INSTANCE WHERE Available_seats < 30
    (D) SELECT Available_seats FROM ROUTE_INSTANCE WHERE seats > 30 (1 புள்ளி)
  • (c) 14. SEAT_RESERVATION என்ற அட்டவணையின் primary key எது?
    [அட்டவணை: SEAT_RESERVATION — நெடுவரிசைகள்: Seat_number, Passenger_name, Passenger_phone]
    (A) ROUTE_STATION
    (B) ROUTE_INSTANCE
    (C) Seat_number
    (D) SEAT_RESERVATION (1 புள்ளி)
  • (d) 15. ஒரு database இல் data redundancy (தரவு மீண்டும் மீண்டும் தோன்றுவது) ஏற்படுவதை தவிர்க்க எந்த நடவடிக்கை பயன்படுகிறது?
    (A) tables அதிகமாக உருவாக்குவது
    (B) Normalization (இயல்பாக்கம்) மேற்கொள்வது
    (C) records ஐ delete செய்வது
    (D) primary key இல்லாமல் tables உருவாக்குவது (1 புள்ளி)
Paper I — பஹுவிடைத் தெரிவு வினாக்கள் (1 புள்ளி வீதம்)
Databases தொடர்பான MCQ பயிற்சி — 2024.
G.C.E. O/L 2024 — Paper I
  • (a) 9. தரவுத்தள மேலாண்மை அமைப்பில் (DBMS - Database Management System) PURCHASE அட்டவணையில் (table) பின்வரும் புலங்கள் (fields) உள்ளன:
    Book_ID, Supplier_ID, Address, Purchasing_price
    SUPPLIER அட்டவணையில்:
    Supplier_ID, Supplier_name, Address
    இந்த இரண்டு அட்டவணைகளுக்கும் இடையே உள்ள உறவு (relationship) எது?
    (A) BOOK அட்டவணையின் Book_ID முதன்மை விசை (Primary Key)
    (B) SUPPLIER அட்டவணையின் Supplier_ID முதன்மை விசை
    (C) PURCHASE அட்டவணையின் Supplier_ID வெளிநாட்டு விசை (Foreign Key)
    (D) PURCHASE அட்டவணையின் Book_ID வெளிநாட்டு விசை (1 புள்ளி)
  • (b) 10. தரவுத்தளத்தில் (database) BOOK அட்டவணையின் (table) Book_ID முதன்மை விசையாக (Primary Key) இருக்கும்போது, அதே Book_ID PURCHASE அட்டவணையில் இருந்தால் அது என்ன அழைக்கப்படும்?
    (A) முதன்மை விசை (Primary Key)
    (B) வெளிநாட்டு விசை (Foreign Key)
    (C) கூட்டு விசை (Composite Key)
    (D) தனிப்பட்ட விசை (Unique Key) (1 புள்ளி)
  • (c) 11. தரவுத்தளத்தில் (database) உள்ள PURCHASE அட்டவணையில் இருந்து Purchasing_price ஐ அதிகரிக்கும் வரிசையில் (ascending order) காண்பிக்க SQL வினவல் (query) எது?
    (A) SELECT * FROM PURCHASE ORDER BY Purchasing_price;
    (B) SELECT * FROM PURCHASE WHERE Purchasing_price;
    (C) SELECT Purchasing_price FROM PURCHASE;
    (D) SELECT * FROM PURCHASE SORT BY Purchasing_price; (1 புள்ளி)
  • (d) 16. LibreOffice Base இல் ஒரு புதிய படிவத்தை (Form) உருவாக்க (create) எந்த படிநிலை (step) பயன்படுத்தப்படுகிறது?
    I - Wizard மூலம் Forms உருவாக்கலாம்
    II - Design View மூலம் Forms உருவாக்கலாம்

    LibreOffice Base இல் Forms உருவாக்க எந்த வழிகள் உள்ளன?
    (A) I மட்டும்
    (B) II மட்டும்
    (C) I மற்றும் II இரண்டும்
    (D) மேலே உள்ள எதுவும் இல்லை (1 புள்ளி)
Paper II — கட்டமைப்பு வினாக்கள் (Structured Questions)
Databases பயிற்சி — 2018.
G.C.E. O/L 2018 — Paper II
  • (a) 3. ஒரு நூலகத்தில் (library) பின்வரும் அட்டவணைகள் உள்ளன:

    Books அட்டவணை: ISBN | BookCode | BookName | PublisherID | Edition
    Publisher அட்டவணை: PublisherID | PublisherName | Address

    கீழ்காணும் வினாக்களுக்கு விடை தருக:
    (i) Books அட்டவணையில் முதன்மை விசை (Primary Key) எது? வெளி விசை (Foreign Key) எது? விளக்குக.

    (ii) LibreOffice Base இல் இந்த இரண்டு அட்டவணைகளுக்கும் இடையே உறவை (relationship) உருவாக்க என்ன செய்வீர்கள்?

    (iii) \'ICT for your life\' என்ற பெயருடைய புத்தகங்களின் விவரங்களை காட்ட SQL query எழுதுக.

    (iv) நூலக அட்டவணையில் புத்தகங்களை (books) வரிசைப்படுத்த (sort) பயன்படும் SQL வாக்கியம் எழுதுக. (10 புள்ளி)
  • (b) 6. ஒரு நிறுவனத்தின் (company) விற்பனை (sales) தரவுத்தளம் கீழ்காணும் அட்டவணைகளைக் கொண்டுள்ளது:

    Sales அட்டவணை:
    Month | ShopID | Sales
    January | 001 | 18700
    February | 001 | 19000
    March | 002 | 18200
    April | 002 | 18860
    March | 001 | 21000

    Shop அட்டவணை:
    ShopID | ShopName | Category
    001 | PQR Central College | B
    002 | | B

    Employee அட்டவணை:
    Emp_ID | Emp_Name | Designation | Div_ID | Division_No | Division_Name | City
    E1 | Saman Perera | Manager | | 2 | Finance | Colombo
    E2 | Raj Sritwan | Engineer | | 2 | Finance | Colombo
    E3 | Mano Samuel | ICT Manager | | 3 | ICT | Colombo
    E4 | Fasal Khan | Accountant | | 2 | Finance | Colombo

    (i) Sales அட்டவணையில் ShopID என்பது வெளி விசை (Foreign Key) என்று கூறலாமா? விளக்குக.

    (ii) Emp_ID = E4 ஆன பணியாளரின் நகரத்தை (city) கண்டறிய SQL query எழுதுக.

    (iii) Employee அட்டவணையில் உள்ள தரவு மீட்பு சிக்கல் (data redundancy problem) என்ன? தீர்வு சொல்லுக.

    (iv) ஒரு 1NF (First Normal Form) ஐ நிறைவேற்றும் (satisfy) அட்டவணையின் நிபந்தனைகளை (conditions) பட்டியலிடுக. (10 புள்ளி)
Paper II — கட்டமைப்பு வினாக்கள் (Structured Questions)
Databases பயிற்சி — 2019.
G.C.E. O/L 2019 — Paper II
  • (a) வினா 3 — (பகுதி II)

    ஒரு நூலகத்தில் புத்தகங்களை நிர்வகிக்க தரவுத்தளம் பயன்படுத்தப்படுகிறது. கீழே மூன்று அட்டவணைகள் உள்ளன:

    pusthakam (Book) அட்டவணை:
    Book_ID | Title | Author | Reserved_Date
    1001 | Science | Nimal | 2019-01-05

    maanavar (Student) அட்டவணை:
    Student_ID | Name | Grade | Library_Number

    pathivu (Reservation) அட்டவணை:
    Book_ID | Student_ID | Year_Joined | ApproxSal | CaptainID

    (i) Book அட்டவணையில் Primary Key எது? ஏன்?
    (ii) Student அட்டவணையில் Primary Key எது?
    (iii) Reservation அட்டவணையில் Foreign Key கள் எவை?
    (iv) Book_ID = 1001 ஆன புத்தக தகவலை தேடும் SQL கட்டளை எழுதுக.
    (v) தரவுத்தளத்தின் நன்மைகள் இரண்டு குறிப்பிடுக. (10 புள்ளி)
  • (b) வினா 6 — (பகுதி II)

    ஒரு Cricket அமைப்பு வீரர்களின் தரவை நிர்வகிக்க தரவுத்தளம் பயன்படுத்துகிறது. கீழே அட்டவணைகள் கொடுக்கப்பட்டுள்ளன:

    aL_amaippu (Team) அட்டவணை:
    TeamID | TeamName | ApproxSal | CaptainID

    aL_veerar (Player) அட்டவணை:
    PlayerID | FirstName | LastName | YearJoined

    pathivu (Record) அட்டவணை:
    TeamID | PlayerID | Year_Joined | ApproxSal | CaptainID

    (i) aL_veerar அட்டவணையில் Primary Key எது?
    (ii) Book_ID என்ற Foreign Key எந்த அட்டவணையில் உள்ளது? அது எந்த அட்டவணையை சுட்டுகிறது?
    (iii) 2019 ல் இணைந்த வீரர்களின் பெயர்களை காட்டும் SQL கட்டளை எழுதுக.
    (iv) Reserved_Date இன் படி வரிசைப்படுத்திய Book_ID பட்டியலை காட்டும் SQL கட்டளை எழுதுக.
    (v) தரவுத்தளத்தில் தரவு மறைமுகம் (Data Redundancy) என்றால் என்ன? அதை தடுக்க எவ்வாறு அமைப்பு உருவாக்கலாம்? (10 புள்ளி)
Paper II — கட்டமைப்பு வினாக்கள் (Structured Questions)
Databases பயிற்சி — 2021.
G.C.E. O/L 2021 — Paper II
  • (a) பின்வரும் தரவுத்தள அட்டவணைகளை (Database Tables) கவனிக்கவும்:

    வாங்குதல் (Item) அட்டவணை:
    Item_ID | Item_Name | Selling_Price
    1001 | Tea bag | 40
    1002 | Milk | 60
    1003 | Chicken oil | 120
    1004 | Coconut | 25

    கொள்முதல் (Purchase) அட்டவணை:
    Item_ID | Supplier_ID | Purchasing_Price
    1001 | 3001 | 35
    1002 | 3002 | 55
    1003 | 3003 | 100
    1004 | 3004 | 20

    வழங்குனர் (Supplier) அட்டவணை:
    Supplier_ID | Supplier_Name | Supplier_Location
    3001 | Supplier 1 | Matara
    3002 | Supplier 2 | Colombo
    3003 | Supplier 3 | Polonnaruwa
    3004 | Supplier 4 | Hambantota

    (i) Item அட்டவணையின் முதன்மை திறவுகோல் (Primary Key) என்னது?
    (ii) கொள்முதல் அட்டவணையில் வெளி திறவுகோல்கள் (Foreign Keys) யாவை?
    (iii) Supplier_Location = \'Matara\' என்ற வழங்குனர்களின் பெயர்களை பெற SQL கட்டளை எழுதவும்.
    (iv) Item_ID = 1001 க்கான Purchasing_Price மற்றும் Selling_Price இடையே உள்ள வித்தியாசத்தை (profit) கணக்கிட SQL கட்டளை எழுதவும். (8 புள்ளி)
Paper II — கட்டமைப்பு வினாக்கள் (Structured Questions)
Databases பயிற்சி — 2022.
G.C.E. O/L 2022 — Paper II
  • (a) 3. ஒரு நூலகத்தில் (Library) புத்தகங்கள் மற்றும் மாணவர்கள் தொடர்பான தரவுத்தளம் (database) பின்வரும் அட்டவணைகளை கொண்டுள்ளது:

    Student அட்டவணை:
    StudentID | StudentName | Grade
    001 | Aruna | 10
    002 | Bimala | 11
    003 | Chaminda | 10

    Borrowed_Items அட்டவணை:
    BorrowID | StudentID | BookTitle | BorrowDate | Returned_Date | ReturnedDate
    01 | 001 | ICT Book | 14/02/2021 | 13/02/2021 14:00:00 | 16/02/2021
    02 | 003 | Atlas | 15/02/2021 | 14/02/2021 14:00:00 | 16/02/2021

    (a) Borrowed_Items அட்டவணையில் Returned_Date மற்றும் ReturnedDate என்று இரண்டு நெடுவரிசைகள் உள்ளன. இவற்றுள் நிரந்தர நீக்கப்பட வேண்டிய நெடுவரிசை எது? காரணம் கூறுக.

    (b) Student அட்டவணையில் உள்ள primary key எது?

    (c) Borrowed_Items அட்டவணையில் உள்ள foreign key எது? இது Student அட்டவணையுடன் எவ்வாறு தொடர்பு கொள்கிறது என்று விளக்குக.

    (d) 2010/2020 ஆண்டுகளுக்கிடையில் புத்தகங்களை கடன் பெற்ற மாணவர்களின் பெயரையும் புத்தக தலைப்பையும் தேர்வு செய்ய SQL வினவல் (query) எழுதுக. (10 புள்ளி)
Paper II — கட்டமைப்பு வினாக்கள் (Structured Questions)
Databases பயிற்சி — 2023.
G.C.E. O/L 2023 — Paper II
  • (a) 1. ஒரு பேருந்து நிலையத்தின் (Bus Station) தரவுத்தள நிர்வாக அமைப்பு (Database Management System) பின்வரும் அட்டவணைகளை (tables) கொண்டுள்ளது:

    Bus_station (Station_code, Name, Code)
    ROUTE (Route_code, From_station_code, To_station_code, Duration)
    ROUTE_INSTANCE (Route_code, Date, From_time, Available_seats)
    SEAT_RESERVATION (Seat_number, Route_code, Date, From_time, Passenger_name, Passenger_phone)

    (a) Bus_station என்ற அட்டவணையில் (table) உள்ள எல்லா தரவுகளையும் பெற SQL query எழுதுக.

    (b) Route code \'R01\' ஐ உடைய ROUTE_INSTANCE அட்டவணையிலிருந்து Date மற்றும் Available_seats நெடுவரிசைகளை (columns) பெற SQL query எழுதுக.

    (c) SEAT_RESERVATION அட்டவணையில் Route_code \'R01\', Date \'2023-01-15\' ஆக உள்ள Passenger_name மற்றும் Passenger_phone ஐ பெற SQL query எழுதுக.

    (d) தரவுத்தளத்தில் (database) primary key மற்றும் foreign key இன் வேறுபாட்டை விளக்குக. (8 புள்ளி)
  • (b) 4. பின்வரும் database அட்டவணைகளை கவனிக்கவும்:

    STUDENT (Student_id, First_name, Last_name, Course_id, Department)
    COURSE (Course_id, Course_name, Department)
    ENROLMENT (Student_id, Course_id, Enrolment_date)

    (a) STUDENT அட்டவணையில் \'Computer Science\' துறையில் (Department) படிக்கும் மாணவர்களின் Student_id, First_name, Last_name ஐ பெற SQL query எழுதுக.

    (b) Chemistry துறையில் (Department) உள்ள Courses ஐ பெற SQL query எழுதுக.

    (c) Student_id \'S104\' உடைய மாணவர் எந்த courses இல் சேர்ந்துள்ளார் என்று அறிய ENROLMENT அட்டவணையிலிருந்து Course_id ஐ பெற SQL query எழுதுக.

    (d) STUDENT மற்றும் COURSE அட்டவணைகளுக்கிடையே உள்ள relationship (தொடர்பு) வகையை விளக்குக. (8 புள்ளி)
Paper II — கட்டமைப்பு வினாக்கள் (Structured Questions)
Databases பயிற்சி — 2024.
G.C.E. O/L 2024 — Paper II
  • (a) 4. VEHICLE மற்றும் CUSTOMER மற்றும் RENTAL என்ற மூன்று அட்டவணைகள் (tables) கொண்ட ஒரு தரவுத்தள அமைப்பை (database system) கவனியுங்கள்.

    VEHICLE அட்டவணை:
    V_id | V_model | V_type | V_year | Rental_price
    V001 | Toyota Corolla | Car | 2020 | 4000
    V002 | Nissan Pickup | Pickup Truck | 2022 | 6000
    V003 | Honda Civic | Car | 2019 | 4500
    V004 | Ford Ranger | Pickup Truck | 2021 | 5000

    CUSTOMER அட்டவணை:
    C_id | C_name | C_type | ...

    RENTAL அட்டவணை:
    R_id | V_id | C_id | ...

    (i) VEHICLE அட்டவணையில் முதன்மை விசை (Primary Key) எது?

    (ii) RENTAL அட்டவணையில் வெளிநாட்டு விசைகள் (Foreign Keys) எவை?

    (iii) Toyota Corolla மற்றும் Ford Ranger மட்டும் தேர்ந்தெடுக்கும் SQL வினவலை (SQL query) எழுதுங்கள்.

    (iv) Rental_price இன் மிக அதிக (Maximum) மதிப்பை காட்டும் SQL வினவலை எழுதுங்கள்.

    (v) 2 அட்டவணைகளை (VEHICLE மற்றும் RENTAL) இணைக்கும் (JOIN) SQL வினவலை எழுதுங்கள். (10 புள்ளி)

✅ விரைவுச் சோதனை (Quick Check)

முக்கிய புள்ளிகளை உறுதிப்படுத்த — தவறான விடைகள் உங்கள் தவறுப் புத்தகத்தில் சேமிக்கப்படும்.

📝 மேலும் பயிற்சி (Practice more)