ડેટાબેઝ મેનેજમેન્ટ (4331603) - ઉનાળો 2025 ઉકેલ

ડેટાબેઝ મેનેજમેન્ટ (4331603) ઉનાળો 2025 પરીક્ષા માટે ઉકેલ માર્ગદર્શિકા

પ્રશ્ન 1(a) [3 ગુણ]

નીચેના શબ્દોની વ્યાખ્યા આપો. 1) મેટાડેટા 2) સ્કીમા 3) ડેટા ડિક્શનરી.

જવાબ:

ટેબલ:

શબ્દવ્યાખ્યા
મેટાડેટાડેટા વિશેનો ડેટા જે ડેટાબેઝની રચના અને વિશેષતાઓ વર્ણવે છે
સ્કીમાડેટાબેઝના સંગઠન અને સંબંધોને દર્શાવતી તાર્કિક રચના
ડેટા ડિક્શનરીડેટાબેઝના તત્વો વિશેની માહિતી સંગ્રહિત કરતો કેન્દ્રીય ભંડાર
  • મેટાડેટા: ડેટાની લાક્ષણિકતાઓ અને ગુણધર્મો વર્ણવતી માહિતી
  • સ્કીમા: ડેટાબેઝની રચના અને મર્યાદાઓ વ્યાખ્યાયિત કરતો બ્લુપ્રિન્ટ
  • ડેટા ડિક્શનરી: બધા ડેટાબેઝ ઓબ્જેક્ટ્સ અને તેમના ગુણધર્મોની કેટલોગ

મેમરી ટ્રીક: "MSD - My System Dictionary"

પ્રશ્ન 1(b) [4 ગુણ]

ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમના ફાયદા લખો.

જવાબ:

ટેબલ:

ફાયદોવર્ણન
ડેટા સ્વતંત્રતાએપ્લિકેશન્સ ડેટા સ્ટોરેજથી સ્વતંત્ર
ડેટા અખંડિતતાડેટાની ચોકસાઈ અને સુસંગતતા જાળવે છે
સુરક્ષા નિયંત્રણવપરાશકર્તા પ્રમાણીકરણ અને અધિકરણ
સમવર્તી પહોંચઅનેક વપરાશકર્તાઓ એકસાથે પહોંચ કરી શકે છે
  • ઘટેલી રીડન્ડન્સી: ડુપ્લિકેટ ડેટા સ્ટોરેજ દૂર કરે છે
  • કેન્દ્રીકૃત નિયંત્રણ: ડેટા મેનેજમેન્ટનું એક જ બિંદુ
  • ડેટા વહેંચણી: અનેક એપ્લિકેશન્સ સમાન ડેટાનો ઉપયોગ કરી શકે છે
  • બેકઅપ પુનઃપ્રાપ્તિ: આપોઆપ ડેટા સુરક્ષા પદ્ધતિઓ

મેમરી ટ્રીક: "DISC-RCDB - Database Is Super Cool"

પ્રશ્ન 1(c) [7 ગુણ]

DBA ની જવાબદારીઓ સમજાવો.

જવાબ:

ટેબલ:

જવાબદારીકાર્યો
ડેટાબેઝ ડિઝાઈનતાર્કિક અને ભૌતિક રચનાઓ બનાવવી
સુરક્ષા મેનેજમેન્ટવપરાશકર્તા પહોંચ અને પરવાનગીઓનું નિયંત્રણ
પર્ફોર્મન્સ ટ્યુનિંગક્વેરીઝ અને ડેટાબેઝ ઓપરેશન્સને ઓપ્ટિમાઈઝ કરવા
બેકઅપ પુનઃપ્રાપ્તિડેટા સુરક્ષા અને પુનઃસ્થાપન સુનિશ્ચિત કરવું
યુઝર મેનેજમેન્ટએકાઉન્ટ બનાવવા અને વિશેષાધિકારો અસાઇન કરવા
  • ડેટાબેઝ ઇન્સ્ટલેશન: DBMS સોફ્ટવેર સેટઅપ અને કોન્ફિગર કરવું
  • ડેટા માઇગ્રેશન: સિસ્ટમ્સ વચ્ચે ડેટાને સુરક્ષિત રીતે ટ્રાન્સફર કરવો
  • ડોક્યુમેન્ટેશન: ડેટાબેઝ સ્કીમા અને પ્રક્રિયાઓ જાળવવી
  • મોનિટરિંગ: સિસ્ટમ પર્ફોર્મન્સ અને રિસોર્સ વપરાશ ટ્રેક કરવું
  • ટ્રબલશૂટિંગ: ડેટાબેઝ સમસ્યાઓ અને ભૂલો ઉકેલવી

મેમરી ટ્રીક: "DSPBU-DMT - DBA Solves Problems By Understanding Database Management Tasks"

પ્રશ્ન 1(c OR) [7 ગુણ]

ડેટા એબ્સ્ટ્રેક્શન શું છે? ત્રણ સ્તરની ANSI SPARC આર્કિટેક્ચરને વિગતવાર સમજાવો.

જવાબ:

ડેટા એબ્સ્ટ્રેક્શન: વપરાશકર્તાઓથી જટિલ ડેટાબેઝ અમલીકરણ વિગતો છુપાવીને સરળ ઇન્ટરફેસ પ્રદાન કરવું.

ટેબલ:

સ્તરવર્ણનવપરાશકર્તાઓ
એક્સટર્નલ લેવલવ્યક્તિગત વપરાશકર્તા દૃશ્યો અને એપ્લિકેશન્સએન્ડ યુઝર્સ
કોન્સેપ્ચુઅલ લેવલસંપૂર્ણ તાર્કિક ડેટાબેઝ રચનાડેટાબેઝ ડિઝાઇનર્સ
ઇન્ટર્નલ લેવલભૌતિક સ્ટોરેજ અને એક્સેસ પદ્ધતિઓસિસ્ટમ પ્રોગ્રામર્સ
  • એક્સટર્નલ લેવલ: જટિલતા છુપાવતા અનેક વપરાશકર્તા દૃશ્યો
  • કોન્સેપ્ચુઅલ લેવલ: સ્ટોરેજ વિગતો વિના સંપૂર્ણ ડેટાબેઝ સ્કીમા
  • ઇન્ટર્નલ લેવલ: ભૌતિક ફાઇલ સંગઠન અને ઇન્ડેક્સિંગ
  • ડેટા સ્વતંત્રતા: એક સ્તરમાં ફેરફારો અન્યને અસર કરતા નથી

મેમરી ટ્રીક: "ECI - Every Computer Implements"

પ્રશ્ન 2(a) [3 ગુણ]

સ્કીમા અને ઇન્સ્ટન્સનો તફાવત સમજાવો

જવાબ:

ટેબલ:

પાસુંસ્કીમાઇન્સ્ટન્સ
વ્યાખ્યાડેટાબેઝ રચનાનો બ્લુપ્રિન્ટચોક્કસ સમયે વાસ્તવિક ડેટા
પ્રકૃતિસ્થિર તાર્કિક ડિઝાઇનડાયનામિક ડેટા સામગ્રી
ફેરફારોભાગ્યે જ સંશોધિતવારંવાર અપડેટ
  • સ્કીમા: ડેટાબેઝ સંગઠન અને મર્યાદાઓ વર્ણવે છે
  • ઇન્સ્ટન્સ: ચોક્કસ ક્ષણે ડેટાબેઝ સામગ્રીનો સ્નેપશોટ
  • સંબંધ: સ્કીમા રચના વ્યાખ્યાયિત કરે છે, ઇન્સ્ટન્સ ડેટા સમાવે છે

મેમરી ટ્રીક: "SI - Structure vs Information"

પ્રશ્ન 2(b) [4 ગુણ]

સ્પેશ્યલાઈઝેશન ઉદાહરણ સાથે સમજાવો.

જવાબ:

સ્પેશ્યલાઈઝેશન: ચોક્કસ લાક્ષણિકતાઓના આધારે સુપરક્લાસમાંથી સબક્લાસ બનાવવાની પ્રક્રિયા.

  • ટોપ-ડાઉન અપ્રોચ: સામાન્ય એન્ટિટીથી ચોક્કસ એન્ટિટીઓ તરફ
  • ઇન્હેરિટન્સ: સબક્લાસેસ સુપરક્લાસના ગુણધર્મો વારસામાં લે છે
  • ડિસજોઇન્ટ: મેનેજર અને ડેવલપર અલગ કેટેગરી છે
  • ઉદાહરણ: એમ્પ્લોયી મેનેજર અને ડેવલપરમાં વિશેષીકૃત

મેમરી ટ્રીક: "STID - Specialization Takes Inheritance Down"

પ્રશ્ન 2(c) [7 ગુણ]

ER ડાયાગ્રામ શું છે? ER ડાયાગ્રામમાં વપરાતા વિવિધ પ્રતીકોને ઉદાહરણ સાથે સમજાવો.

જવાબ:

ER ડાયાગ્રામ: ડેટાબેઝ ડિઝાઇનમાં એન્ટિટીઝ, એટ્રિબ્યુટ્સ અને સંબંધો દર્શાવતી ગ્રાફિકલ પ્રતિનિધિત્વ.

ટેબલ:

પ્રતીકઆકારહેતુઉદાહરણ
એન્ટિટીલંબચોરસવાસ્તવિક વિશ્વનો ઓબ્જેક્ટStudent, Course
એટ્રિબ્યુટઅંડાકારએન્ટિટીના ગુણધર્મોName, Age, ID
સંબંધહીરોએન્ટિટી કનેક્શન્સEnrolls, Takes
પ્રાઇમરી કીઅન્ડરલાઇન અંડાકારયુનિક આઇડેન્ટિફાયરStudent_ID
  • એન્ટિટી સેટ્સ: સમાન ગુણધર્મો ધરાવતી સમાન એન્ટિટીઝનો સંગ્રહ
  • વીક એન્ટિટી: ઓળખ માટે સ્ટ્રોંગ એન્ટિટી પર આધારિત
  • કાર્ડિનાલિટી: સંબંધ સહભાગિતા વ્યાખ્યાયિત કરે છે (1:1, 1:M, M:N)
  • પાર્ટિસિપેશન: ટોટલ (ડબલ લાઇન) અથવા પાર્શિયલ (સિંગલ લાઇન)

મેમરી ટ્રીક: "EARP - Entities And Relationships Program"

પ્રશ્ન 2(a OR) [3 ગુણ]

DA અને DBA નો તફાવત સમજાવો.

જવાબ:

ટેબલ:

પાસુંડેટા એડમિનિસ્ટ્રેટર (DA)ડેટાબેઝ એડમિનિસ્ટ્રેટર (DBA)
ફોકસડેટા પોલિસીઝ અને સ્ટાન્ડર્ડ્સતકનીકી ડેટાબેઝ ઓપરેશન્સ
સ્તરવ્યૂહાત્મક આયોજનઓપરેશનલ અમલીકરણ
સ્કોપસંસ્થા-વ્યાપી ડેટાચોક્કસ ડેટાબેઝ સિસ્ટમ્સ
  • DA: સંસ્થાકીય સંસાધન તરીકે ડેટાનું સંચાલન કરે છે
  • DBA: તકનીકી ડેટાબેઝ જાળવણી અને પર્ફોર્મન્સ સંભાળે છે
  • સહયોગ: DA નીતિઓ સેટ કરે છે, DBA તેમને અમલમાં મૂકે છે

મેમરી ટ્રીક: "DA-DBA: Design Authority - Database Builder Administrator"

પ્રશ્ન 2(b OR) [4 ગુણ]

જનરલાઈઝેશન ઉદાહરણ સાથે સમજાવો.

જવાબ:

જનરલાઈઝેશન: સમાન એન્ટિટીઝને સામાન્ય સુપરક્લાસમાં જોડવાની બોટમ-અપ પ્રક્રિયા.

  • બોટમ-અપ અપ્રોચ: ચોક્કસ એન્ટિટીઝથી સામાન્ય એન્ટિટી તરફ
  • કોમન એટ્રિબ્યુટ્સ: સહેજ ગુણધર્મો સુપરક્લાસમાં ખસેડાય છે
  • સ્પેશ્યલાઈઝેશન રિવર્સ: સ્પેશ્યલાઈઝેશન પ્રક્રિયાનું વિપરીત
  • ઉદાહરણ: કાર અને મોટરસાઇકલ વાહનમાં સામાન્યીકૃત

મેમરી ટ્રીક: "GBCS - Generalization Brings Common Superclass"

પ્રશ્ન 2(c OR) [7 ગુણ]

એટ્રિબ્યુટ શું છે? વિવિધ પ્રકારના એટ્રિબ્યુટ્સ ઉદાહરણ સાથે સમજાવો.

જવાબ:

એટ્રિબ્યુટ: એન્ટિટીનું વર્ણન કરતી ગુણવત્તા અથવા લાક્ષણિકતા.

ટેબલ:

એટ્રિબ્યુટ પ્રકારવર્ણનઉદાહરણ
સિમ્પલવધુ વિભાજિત કરી શકાતું નથીAge, Name
કોમ્પોઝિટઉપવિભાગ કરી શકાય છેAddress (Street, City, ZIP)
સિંગલ-વેલ્યુડએન્ટિટી દીઠ એક મૂલ્યStudent_ID
મલ્ટિ-વેલ્યુડઅનેક મૂલ્યો શક્યPhone_numbers
ડેરાઇવ્ડઅન્ય એટ્રિબ્યુટ્સમાંથી ગણાય છેAge from Birth_date
  • કી એટ્રિબ્યુટ: એન્ટિટી ઇન્સ્ટન્સેસને યુનિકલી ઓળખે છે
  • નલ વેલ્યુઝ: એટ્રિબ્યુટ્સ કે જેમાં કોઈ મૂલ્ય ન હોઈ શકે
  • ડિફોલ્ટ વેલ્યુઝ: નિર્દિષ્ટ ન હોય ત્યારે પૂર્વનિર્ધારિત મૂલ્યો
  • કન્સ્ટ્રેઇન્ટ્સ: એટ્રિબ્યુટ મૂલ્યોને સંચાલિત કરતા નિયમો

મેમરી ટ્રીક: "SCSMD-K - Simple Composite Single Multi Derived Key"

પ્રશ્ન 3(a) [3 ગુણ]

SQL માં GRANT અને REVOKE સ્ટેટમેન્ટ સમજાવો.

જવાબ:

ટેબલ:

સ્ટેટમેન્ટહેતુસિન્ટેક્સ ઉદાહરણ
GRANTવપરાશકર્તાઓને વિશેષાધિકારો પ્રદાન કરે છેGRANT SELECT ON table TO user
REVOKEવપરાશકર્તા વિશેષાધિકારો દૂર કરે છેREVOKE INSERT ON table FROM user
SQL
  • વિશેષાધિકારો: SELECT, INSERT, UPDATE, DELETE, ALL
  • ઓબ્જેક્ટ્સ: ટેબલ્સ, વ્યૂઝ, ડેટાબેઝિસ, પ્રોસીજર્સ
  • સુરક્ષા: ડેટા એક્સેસ અને મોડિફિકેશન રાઇટ્સનું નિયંત્રણ

મેમરી ટ્રીક: "GR - Grant Rights, Remove Rights"

પ્રશ્ન 3(b) [4 ગુણ]

નીચેના Character functions સમજાવો. 1) INITCAP 2) SUBSTR

જવાબ:

ટેબલ:

ફંક્શનહેતુસિન્ટેક્સઉદાહરણ
INITCAPદરેક શબ્દનો પહેલો અક્ષર મોટો કરે છેINITCAP(string)INITCAP('hello world') = 'Hello World'
SUBSTRસ્ટ્રિંગમાંથી સબસ્ટ્રિંગ કાઢે છેSUBSTR(string, start, length)SUBSTR('Database', 1, 4) = 'Data'
SQL
  • INITCAP: સ્ટ્રિંગને યોગ્ય કેસ ફોર્મેટમાં કન્વર્ટ કરે છે
  • SUBSTR: પેરામીટર્સ છે સ્ટ્રિંગ, શરૂઆતની સ્થિતિ, વૈકલ્પિક લંબાઈ
  • વપરાશ: ટેક્સ્ટ ફોર્મેટિંગ અને સ્ટ્રિંગ મેનિપ્યુલેશન ઓપરેશન્સ

મેમરી ટ્રીક: "IS - Initialize String, Split String"

પ્રશ્ન 3(c) [7 ગુણ]

નીચે દશાવેલ ટેબલને ધ્યાનમાં લઈ આપેલ ક્વેરીઝના જવાબ લખો. stud_master (enroll_no, name, city, dept)

જવાબ:

SQL

ટેબલ:

ક્વેરી પ્રકારSQL કમાન્ડહેતુ
SELECTડેટા મેળવે છેરેકોર્ડ્સ દર્શાવે છે
INSERTનવો ડેટા ઉમેરે છેરેકોર્ડ્સ બનાવે છે
ALTERરચના સંશોધિત કરે છેકૉલમ્સ ઉમેરે છે
COUNTએગ્રિગેટ ફંક્શનપંક્તિઓ ગણે છે

મેમરી ટ્રીક: "SIAC-DOC - SQL Is A Complete Database Operations Collection"

પ્રશ્ન 3(a OR) [3 ગુણ]

SQL માં equi join ઉદાહરણ સાથે સમજાવો.

જવાબ:

Equi Join: સમાન કૉલમ્સના આધારે ટેબલ્સને જોડવા માટે સમાનતા શરતનો ઉપયોગ કરતું જોઇન ઓપરેશન.

SQL
  • સમાનતા ઓપરેટર: કૉલમ મૂલ્યો મેચ કરવા માટે = નો ઉપયોગ
  • કોમન કૉલમ્સ: ટેબલ્સમાં સંબંધિત એટ્રિબ્યુટ્સ હોવા જોઈએ
  • પરિણામ: મેચના આધારે અનેક ટેબલ્સમાંથી સંયુક્ત ડેટા

મેમરી ટ્રીક: "EJ - Equal Join"

પ્રશ્ન 3(b OR) [4 ગુણ]

નીચેના Aggregate functions સમજાવો. 1) MAX 2) SUM

જવાબ:

ટેબલ:

ફંક્શનહેતુસિન્ટેક્સઉદાહરણ
MAXમહત્તમ મૂલ્ય પરત કરે છેMAX(column)MAX(salary) = 50000
SUMમૂલ્યોનો કુલ સરવાળો પરત કરે છેSUM(column)SUM(marks) = 450
SQL
  • એગ્રિગેટ ફંક્શન્સ: અનેક પંક્તિઓ પર કામ કરે છે, એક મૂલ્ય પરત કરે છે
  • NULL હેન્ડલિંગ: ગણતરીમાં NULL મૂલ્યોને અવગણે છે
  • GROUP BY: કેટેગરી-વાઇઝ પરિણામો માટે ગ્રુપિંગ સાથે ઉપયોગ કરી શકાય છે

મેમરી ટ્રીક: "MS - Maximum Sum"

પ્રશ્ન 3(c OR) [7 ગુણ]

નીચે દશાવેલ ટેબલ માટે SQL ક્વેરીઝ લખો: PRODUCT_Master: (prod_no, prod_name, profit, quantity, sell_price, cost_price)

જવાબ:

SQL

મેમરી ટ્રીક: "CIDFAUD - Create Insert Delete Find Add Update Distinct"

પ્રશ્ન 4(a) [3 ગુણ]

fully functional dependency ઉદાહરણ સાથે સમજાવો.

જવાબ:

Fully Functional Dependency: એટ્રિબ્યુટ સંપૂર્ણ રીતે ફંક્શનલ ડિપેન્ડન્ટ છે જો તે સંપૂર્ણ પ્રાઇમરી કી પર આધારિત હોય, આંશિક કી પર નહીં.

ટેબલ:

ડિપેન્ડન્સી પ્રકારવ્યાખ્યાઉદાહરણ
Full FDસંપૂર્ણ કી પર આધારિત(Student_ID, Course_ID) → Grade
Partial FDકીના ભાગ પર આધારિત(Student_ID, Course_ID) → Student_Name
ઉદાહરણ: Student_Course(Student_ID, Course_ID, Student_Name, Grade)

Full FD: (Student_ID, Course_ID) → Grade
Partial FD: Student_ID → Student_Name
  • સંપૂર્ણ કી: કોમ્પોઝિટ પ્રાઇમરી કીના બધા એટ્રિબ્યુટ્સ જરૂરી
  • નોન-કી એટ્રિબ્યુટ: સંપૂર્ણ પ્રાઇમરી કી કોમ્બિનેશન પર આધારિત
  • 2NF જરૂરિયાત: આંશિક ડિપેન્ડન્સીઝ દૂર કરે છે

મેમરી ટ્રીક: "FFD - Full Function Dependency"

પ્રશ્ન 4(b) [4 ગુણ]

નીચે દશાવેલ રિલેશનલ સ્કીમાને ધ્યાનમાં લઈ રિલેશનલ અલજીબ્રા એક્સપ્રેશન આપો: Employee (Emp_name, Emp_id, birth_date, Post, salary)

જવાબ:

(i) Post="Clerk" ધરાવતા બધા કર્મચારીઓની યાદી બનાવો
σ(Post='Clerk')(Employee)

(ii) salary > 2000 અને post='Manager' ધરાવતા Emp_id અને Emp_name શોધો
π(Emp_id, Emp_name)(σ(salary>2000 ∧ Post='Manager')(Employee))

ટેબલ:

પ્રતીકઓપરેશનહેતુ
σસિલેક્શનશરત આધારિત પંક્તિઓ ફિલ્ટર કરે છે
πપ્રોજેક્શનચોક્કસ કૉલમ્સ પસંદ કરે છે
ANDતાર્કિક સંયોજન
  • સિલેક્શન (σ): નિર્દિષ્ટ શરતો પૂરી કરતી પંક્તિઓ પસંદ કરે છે
  • પ્રોજેક્શન (π): પરિણામમાંથી જરૂરી કૉલમ્સ પસંદ કરે છે
  • સંયુક્ત ઓપરેશન્સ: અનેક ઓપરેશન્સનો એકસાથે ઉપયોગ કરી શકાય છે

મેમરી ટ્રીક: "SPA - Select Project And"

પ્રશ્ન 4(c) [7 ગુણ]

2NF ના ક્રાઇટેરિયા શું છે? આપેલ રિલેશનમાં વિવિધ ફંક્શનલ ડિપેન્ડન્સીઝ શોધો અને તેને 2NF માં નોર્મલાઈઝ કરો.

જવાબ:

2NF ક્રાઇટેરિયા:

  • 1NF માં હોવું જોઈએ
  • પ્રાઇમરી કી પર કોઈ આંશિક ફંક્શનલ ડિપેન્ડન્સીઝ ન હોવી જોઈએ

આપેલ ટેબલ: Student_Course(Student_ID, Course_ID, Student_Name, Course_Name)

ફંક્શનલ ડિપેન્ડન્સીઝ:

Student_ID → Student_Name (Partial FD)
Course_ID → Course_Name (Partial FD)
(Student_ID, Course_ID) → (Student_Name, Course_Name) (Full FD)

2NF નોર્મલાઈઝેશન:

SQL

મેમરી ટ્રીક: "2NF - Two Normal Form removes partial dependencies"

પ્રશ્ન 4(a OR) [3 ગુણ]

3NF ઉદાહરણ સાથે સમજાવો.

જવાબ:

3NF (Third Normal Form): 2NF માં હોય અને પ્રાઇમરી કી પર કોઈ ટ્રાન્ઝિટિવ ડિપેન્ડન્સીઝ ન હોય તેવું ટેબલ.

ટેબલ:

નોર્મલ ફોર્મજરૂરિયાતનાબૂદ કરે છે
3NF2NF માં + કોઈ ટ્રાન્ઝિટિવ ડિપેન્ડન્સીઝ નહીંટ્રાન્ઝિટિવ FD
ઉદાહરણ: Employee(Emp_ID, Dept_ID, Dept_Name)

ટ્રાન્ઝિટિવ ડિપેન્ડન્સી: Emp_ID → Dept_ID → Dept_Name

3NF ઉકેલ:
Employee(Emp_ID, Dept_ID)
Department(Dept_ID, Dept_Name)
  • ટ્રાન્ઝિટિવ ડિપેન્ડન્સી: A → B → C જ્યાં A પ્રાઇમરી કી છે
  • નોન-કી ટુ નોન-કી: નોન-કી એટ્રિબ્યુટ્સ વચ્ચે ડિપેન્ડન્સી
  • ડિકમ્પોઝિશન: ટ્રાન્ઝિટિવ ડિપેન્ડન્સીઝ દૂર કરવા માટે ટેબલ વિભાજિત કરવું

મેમરી ટ્રીક: "3NF - Third Normal Form removes Transitive dependencies"

પ્રશ્ન 4(b OR) [4 ગુણ]

નીચે દશાવેલ રિલેશનલ સ્કીમાને ધ્યાનમાં લઈ રિલેશનલ અલજીબ્રા એક્સપ્રેશન આપો: Students (Name, SPI, DOB, Enrollment No)

જવાબ:

(i) SPI 7.0 થી વધુ હોય તેવા બધા વિદ્યાર્થીઓની યાદી બનાવો
σ(SPI > 7.0)(Students)

(ii) enrollment number 007 હોય તેવા વિદ્યાર્થીનું name, DOB દર્શાવો
π(Name, DOB)(σ(Enrollment_No = '007')(Students))

ટેબલ:

ક્વેરીરિલેશનલ અલજીબ્રાહેતુ
ફિલ્ટરσ(condition)પંક્તિઓ પસંદ કરે છે
પ્રોજેક્ટπ(attributes)કૉલમ્સ પસંદ કરે છે
  • પહેલા સિલેક્શન: પ્રોજેક્શન પહેલાં શરતો લાગુ કરો
  • ચોક્કસ મૂલ્ય: સ્ટ્રિંગ લિટરલ્સ માટે ક્વોટ્સનો ઉપયોગ કરો
  • કૉલમ નામો: ચોક્કસ એટ્રિબ્યુટ નામો જરૂરી

મેમરી ટ્રીક: "SPI-DOB: Select Project Information - Display Output Better"

પ્રશ્ન 4(c OR) [7 ગુણ]

1NF ના ક્રાઇટેરિયા શું છે? આપેલ ટેબલને બે અલગ અલગ પદ્ધતિથી 1NF માં નોર્મલાઇઝ કરો.

જવાબ:

1NF ક્રાઇટેરિયા:

  • દરેક સેલમાં એક જ અણુ મૂલ્ય હોવું જોઈએ
  • કોઈ પુનરાવર્તિત જૂથો અથવા એરેઝ નહીં
  • દરેક પંક્તિ અનન્ય હોવી જોઈએ

આપેલ ટેબલ:

EnrollmentNoNameSubjects
001DEFMaths,Physics,Chemistry
002XYZHistory,Biology,English

પદ્ધતિ 1 - અલગ પંક્તિઓ:

EnrollmentNoNameSubject
001DEFMaths
001DEFPhysics
001DEFChemistry
002XYZHistory
002XYZBiology
002XYZEnglish

પદ્ધતિ 2 - અલગ ટેબલ્સ:

SQL

મેમરી ટ્રીક: "1NF - One Normal Form creates Atomic values"

પ્રશ્ન 5(a) [3 ગુણ]

ટ્રાન્ઝેક્શનની ACID પ્રોપર્ટીઝ સમજાવો.

જવાબ:

ટેબલ:

પ્રોપર્ટીવર્ણનહેતુ
Atomicityસંપૂર્ણ અથવા કંઈ જ એક્ઝિક્યુશનટ્રાન્ઝેક્શન સંપૂર્ણતા
Consistencyડેટાબેઝ માન્ય રહે છેડેટા અખંડિતતા
Isolationસમવર્તી ટ્રાન્ઝેક્શન્સ સ્વતંત્રહસ્તક્ષેપ ટાળવો
Durabilityકમિટ થયેલા ફેરફારો કાયમીડેટા સ્થિરતા
  • Atomicity: ટ્રાન્ઝેક્શન સંપૂર્ણ રીતે એક્ઝિક્યુટ થાય અથવા બિલકુલ નહીં
  • Consistency: ટ્રાન્ઝેક્શન પહેલાં/પછી ડેટાબેઝ કન્સ્ટ્રેઇન્ટ્સ જાળવાય છે
  • Isolation: ટ્રાન્ઝેક્શન્સ એકબીજા સાથે હસ્તક્ષેપ કરતા નથી
  • Durability: એકવાર કમિટ થયા પછી, ફેરફારો સિસ્ટમ ફેઇલ્યુર્સમાં ટકી રહે છે

મેમરી ટ્રીક: "ACID - All Consistent Isolated Durable"

પ્રશ્ન 5(b) [4 ગુણ]

નીચે દશાવેલ સ્પેસિફિકેશન મુજબ ટેબલ બનાવો: STUDENT: (stu_id, stu_name, Address, City, contact_no, Branch_name)

જવાબ:

SQL

ટેબલ:

કન્સ્ટ્રેઇન્ટહેતુઅમલીકરણ
NOT NULLફરજિયાત ફીલ્ડstu_name NOT NULL
CHECKવેલ્યુ વેલિડેશનBranch_name IN (...)
  • પ્રાઇમરી કી: stu_id દરેક વિદ્યાર્થીને અનન્ય રીતે ઓળખે છે
  • NOT NULL: stu_name ખાલી હોઈ શકે નહીં
  • CHECK કન્સ્ટ્રેઇન્ટ: Branch_name નિર્દિષ્ટ મૂલ્યો સુધી મર્યાદિત
  • ડેટા ટાઇપ્સ: દરેક ફીલ્ડ માટે યોગ્ય સાઇઝ

મેમરી ટ્રીક: "CNPD - Constraints Names Primary Datatypes"

પ્રશ્ન 5(c) [7 ગુણ]

ટ્રિગર શું છે? Oracle માં ટ્રિગર બનાવવા માટે સિન્ટેક્સ લખો. સિમ્પલ ટ્રિગર બનાવો.

જવાબ:

ટ્રિગર: વિશેષ સ્ટોર્ડ પ્રોસીજર જે ડેટાબેઝ ઇવેન્ટ્સના પ્રતિભાવમાં આપોઆપ એક્ઝિક્યુટ થાય છે.

Oracle ટ્રિગર સિન્ટેક્સ:

SQL

સિમ્પલ ટ્રિગર ઉદાહરણ:

SQL

ટેબલ:

ટ્રિગર પ્રકારક્યારે એક્ઝિક્યુટ થાયહેતુ
BEFOREDML ઓપરેશન પહેલાંવેલિડેશન, મોડિફિકેશન
AFTERDML ઓપરેશન પછીલોગિંગ, ઓડિટિંગ
FOR EACH ROWરો-લેવલ ટ્રિગરપ્રતિ પંક્તિ એક્ઝિક્યુશન
  • :NEW: દાખલ/અપડેટ કરવામાં આવતા નવા મૂલ્યોનો સંદર્ભ
  • :OLD: ડિલીટ/અપડેટ કરવામાં આવતા જૂના મૂલ્યોનો સંદર્ભ
  • આપોઆપ એક્ઝિક્યુશન: નિર્દિષ્ષ્ટ ઇવેન્ટ્સ પર આપોઆપ ફાયર થાય છે
  • બિઝનેસ લોજિક: જટિલ બિઝનેસ નિયમો લાગુ કરે છે

મેમરી ટ્રીક: "TBA-FEN - Triggers Before After For Each New"

પ્રશ્ન 5(a OR) [3 ગુણ]

ટ્રાન્ઝેક્શનમાં કન્કરન્સી કંટ્રોલના પ્રોબ્લેમ્સ સમજાવો.

જવાબ:

ટેબલ:

સમસ્યાવર્ણનઉદાહરણ
Lost Updateએક ટ્રાન્ઝેક્શન બીજાના ફેરફારો પર લખે છેT1, T2 સમાન રેકોર્ડ અપડેટ કરે છે
Dirty Readઅનકમિટ ડેટા વાંચવોT1 T2 ના અનકમિટ ફેરફારો વાંચે છે
Unrepeatable Readસમાન ક્વેરી અલગ પરિણામો આપે છેT1 વાંચે, T2 અપડેટ કરે, T1 ફરી વાંચે
  • Phantom Read: સમાન ટ્રાન્ઝેક્શનમાં ક્વેરીઝ વચ્ચે નવી પંક્તિઓ દેખાય છે
  • Deadlock: બે ટ્રાન્ઝેક્શન્સ એકબીજાના લોક્સની રાહ જુએ છે
  • Inconsistent Analysis: ડેટા સંશોધિત થતો હોય ત્યારે વાંચવો

મેમરી ટ્રીક: "LDU-PID - Lost Dirty Unrepeatable Phantom Inconsistent Deadlock"

પ્રશ્ન 5(b OR) [4 ગુણ]

નીચે દશાવેલ સ્પેસિફિકેશન મુજબ ટેબલ બનાવો: STUDENT: (stu_id, stu_name, Address, City, contact_no, Branch_name)

જવાબ:

SQL

ટેબલ:

કન્સ્ટ્રેઇન્ટઅમલીકરણહેતુ
PRIMARY KEYstu_id PRIMARY KEYઅનન્ય ઓળખ
CHECKstu_id LIKE 'S%''S' થી શરૂ થવું જોઈએ
  • પ્રાઇમરી કી: stu_id અનન્ય આઇડેન્ટિફાયર તરીકે કામ કરે છે
  • પેટર્ન ચેક: stu_id અક્ષર 'S' થી શરૂ થવું જોઈએ
  • ડેટા ટાઇપ્સ: યોગ્ય ફીલ્ડ સાઇઝ અને ટાઇપ્સ
  • કન્સ્ટ્રેઇન્ટ વેલિડેશન: ડેટાબેઝ આપોઆપ નિયમો લાગુ કરે છે

મેમરી ટ્રીક: "PKC-ST - Primary Key Check Starts"

પ્રશ્ન 5(c OR) [7 ગુણ]

એક્સપ્લિસિટ કર્સર શું છે? એક્સપ્લિસિટ કર્સર ઉદાહરણ સાથે સમજાવો.

જવાબ:

એક્સપ્લિસિટ કર્સર: અનેક પંક્તિઓ પરત કરતા SELECT સ્ટેટમેન્ટ્સ હેન્ડલ કરવા માટે પ્રોગ્રામેટિક કંટ્રોલ સાથે વપરાશકર્તા-વ્યાખ્યાયિત કર્સર.

કર્સર ઓપરેશન્સ:

SQL

ટેબલ:

ઓપરેશનહેતુસિન્ટેક્સ
DECLAREકર્સર ડિફાઇન કરવુંCURSOR name IS SELECT...
OPENકર્સર ઇનિશિયલાઇઝ કરવુંOPEN cursor_name
FETCHડેટા મેળવવોFETCH cursor INTO variables
CLOSEરિસોર્સ છોડવાCLOSE cursor_name
  • મેન્યુઅલ કંટ્રોલ: પ્રોગ્રામર કર્સર ઓપરેશન્સને નિયંત્રિત કરે છે
  • મેમરી મેનેજમેન્ટ: સ્પષ્ટ રીતે ઓપન અને ક્લોઝ કરવું જોઈએ
  • લૂપ પ્રોસેસિંગ: સામાન્ય રીતે અનેક પંક્તિઓ માટે લૂપ્સ સાથે ઉપયોગ થાય છે
  • કર્સર એટ્રિબ્યુટ્સ: %FOUND, %NOTFOUND, %ROWCOUNT

મેમરી ટ્રીક: "DOFC - Declare Open Fetch Close"