મુખ્ય સામગ્રી પર જાઓ
  1. સંસાધનો/
  2. અભ્યાસ સામગ્રી/
  3. ઇન્ફોર્મેશન અને કમ્યુનિકેશન ટેકનોલોજી એન્જિનિયરિંગ/
  4. આઈસીટી સેમેસ્ટર 3/

ડેટાબેઝ મેનેજમેન્ટ સિસ્ટમ (1333204) - વિન્ટર 2023 સોલ્યુશન

16 મિનિટ· ·
અભ્યાસ-સામગ્રી સોલ્યુશન ડેટાબેઝ 1333204 2023 વિન્ટર
મિલવ ડબગર
લેખક
મિલવ ડબગર
ઇલેક્ટ્રિકલ અને ઇલેક્ટ્રોનિક મેન્યુફેક્ચરિંગ ઉદ્યોગમાં અનુભવી લેક્ચરર. એમ્બેડેડ સિસ્ટમ્સ, ઈમેજ પ્રોસેસિંગ, ડેટા સાયન્સ, મેટલેબ, પાયથન, STM32માં કુશળ. એલ.ડી. કોલેજ ઓફ એન્જિનિયરિંગ - અમદાવાદથી કમ્યુનિકેશન સિસ્ટમ્સ એન્જિનિયરિંગમાં માસ્ટર્સ ડિગ્રી ધરાવતા મજબૂત શિક્ષણ વ્યાવસાયિક.
અનુક્રમણિકા

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

વ્યાખ્યા આપો: ફિલ્ડ, રેકોર્ડ, મેટાડેટા

જવાબ:

શબ્દવ્યાખ્યા
ફિલ્ડડેટાબેઝ ટેબલમાં ચોક્કસ એટ્રિબ્યુટને રજૂ કરતી ડેટાની એક એકલ એકમ (દા.ત. નામ, ઉંમર, ID)
રેકોર્ડસંબંધિત ફિલ્ડ્સનો સંપૂર્ણ સેટ જે એક એન્ટિટી ઇન્સ્ટન્સને રજૂ કરે છે (ટેબલમાં એક રો)
મેટાડેટાડેટા જે અન્ય ડેટાની રચના, ગુણધર્મો અને સંબંધોનું વર્ણન કરે છે (“ડેટા વિશે ડેટા”)

મનેમોનિક: “FRM: ફિલ્ડ્સ રો-અપ એઝ મેટાડેટા”

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

વ્યાખ્યા લખો (i) E-R મોડલ (ii) એન્ટિટી (iii) એન્ટિટી સેટ અને (iv) એટ્રીબ્યુટ્સ

જવાબ:

શબ્દવ્યાખ્યા
E-R મોડલડેટાબેઝ ડિઝાઇનનો ગ્રાફિકલ અભિગમ જે એન્ટિટીઝ, તેમના એટ્રિબ્યુટ્સ અને રિલેશનશીપને મોડેલ કરે છે
એન્ટિટીએક વાસ્તવિક-વિશ્વ વસ્તુ, વિચાર અથવા ચીજ જેનું સ્વતંત્ર અસ્તિત્વ છે
એન્ટિટી સેટસમાન એન્ટિટીઓનો સંગ્રહ જે સમાન એટ્રિબ્યુટ્સ ધરાવે છે (ટેબલ તરીકે રજૂ કરાય છે)
એટ્રિબ્યુટ્સગુણધર્મો અથવા લક્ષણો જે એન્ટિટીનું વર્ણન કરે છે (ટેબલના કોલમ તરીકે રજૂ કરાય છે)
erDiagram
    ENTITY {
        string attribute1
        number attribute2
    }
    ENTITY_SET ||--o{ ENTITY : contains

મનેમોનિક: “EEAA: એન્ટિટીસ એક્ઝિસ્ટ એઝ એટ્રિબ્યુટ્સ”

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

DBMS નાં ફાયદા અને ગેરફાયદા જણાવો.

જવાબ:

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

મનેમોનિક: “SIDSR vs CCPVC” (શેરિંગ, ઇન્ટિગ્રિટી, ડેટા ઇન્ડિપેન્ડન્સ, સિક્યુરિટી, રિડન્ડન્સી vs કોસ્ટ, કોમ્પ્લેક્સિટી, પરફોર્મન્સ, વલ્નરેબિલિટી, કન્વર્ઝન)

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

DBA નું પુરુનામ લખો. DBAની ભૂમિકા અને જવાબદારીઓ સમજાવો.

જવાબ:

DBA: Database Administrator (ડેટાબેઝ એડમિનિસ્ટ્રેટર)

DBAની જવાબદારીઓ
ડેટાબેઝ ડિઝાઇન: કાર્યક્ષમ ડેટાબેઝ સ્કીમા બનાવે છે
સિક્યુરિટી મેનેજમેન્ટ: યુઝર એક્સેસ કંટ્રોલ સેટ કરે છે
પ્રદર્શન ટ્યુનિંગ: ક્વેરી અને ઇન્ડેક્સને ઓપ્ટિમાઇઝ કરે છે
બેકઅપ અને રિકવરી: ડેટા સુરક્ષા યોજનાઓ લાગુ કરે છે
મેઇન્ટેનન્સ: સોફ્ટવેર અપડેટ કરે છે અને પેચ લાગુ કરે છે
ટ્રબલશૂટિંગ: ડેટાબેઝ સમસ્યાઓનો ઉકેલ કરે છે
યુઝર સપોર્ટ: ડેટાબેઝ વપરાશકર્તાઓને તાલીમ આપે છે અને સહાય કરે છે
flowchart TD
    A[ડેટાબેઝ એડમિનિસ્ટ્રેટર] --> B[ડેટાબેઝ ડિઝાઇન]
    A --> C[સિક્યુરિટી મેનેજમેન્ટ]
    A --> D[પ્રદર્શન ટ્યુનિંગ]
    A --> E[બેકઅપ અને રિકવરી]
    A --> F[મેઇન્ટેનન્સ]
    A --> G[ટ્રબલશૂટિંગ]
    A --> H[યુઝર સપોર્ટ]

મનેમોનિક: “SPBT-MUS” (સિક્યુરિટી, પરફોર્મન્સ, બેકઅપ, ટ્રબલશૂટિંગ, મેઇન્ટેનન્સ, યુઝર સપોર્ટ)

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

યોગ્ય ઉદાહરણ સાથે સિંગલ વેલ્યુડ અને મલ્ટી વેલ્યુડ એટ્રીબ્યુટ્સ વચ્ચેનો તફાવત સમજાવો

જવાબ:

એટ્રિબ્યુટ પ્રકારવર્ણનઉદાહરણો
સિંગલ-વેલ્યુડદરેક એન્ટિટી ઇન્સ્ટન્સ માટે માત્ર એક મૂલ્ય ધરાવે છેEmployee ID, જન્મતારીખ, નામ
મલ્ટી-વેલ્યુડએક જ એન્ટિટી માટે ઘણા મૂલ્યો ધરાવી શકે છેફોન નંબર, કૌશલ્યો, ઇમેઇલ એડ્રેસ
erDiagram
    EMPLOYEE {
        string emp_id
        string name
        date birth_date
        string phone_numbers
        string skills
    }

મનેમોનિક: “SIM: સિંગલ ઇઝ મિનિમલ, મલ્ટી ઇઝ મેની”

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

E-R ડાયાગ્રામ માટે કી કન્સ્ટ્રેન્ટ્સ સમજાવો

જવાબ:

કી કન્સ્ટ્રેન્ટવર્ણન
પ્રાઇમરી કીએન્ટિટી સેટમાં દરેક એન્ટિટીને અનન્ય રીતે ઓળખે છે
કેન્ડિડેટ કીકોઈપણ એટ્રિબ્યુટ જે પ્રાઇમરી કી તરીકે કામ કરી શકે
ફોરેન કીઅન્ય એન્ટિટી સેટની પ્રાઇમરી કીનો સંદર્ભ આપે છે
સુપર કીએટ્રિબ્યુટ્સનો કોઈપણ સેટ જે અનન્ય રીતે એન્ટિટીને ઓળખે છે
erDiagram
    STUDENT {
        int student_id PK
        string name
        string email
    }
    COURSE {
        int course_id PK
        string title
    }
    ENROLLMENT {
        int student_id FK
        int course_id FK
        date enroll_date
    }
    STUDENT ||--o{ ENROLLMENT : has
    COURSE ||--o{ ENROLLMENT : includes

મનેમોનિક: “PCFS: પ્રાઇમરી કેન્ડિડેટ્સ ફાઇન્ડ સુપરકીઝ”

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

બેંકિંગ મેનેજમેન્ટ સિસ્ટમ માટે E-R ડાયાગ્રામ બનાવો

જવાબ:

erDiagram
    CUSTOMER {
        int customer_id PK
        string name
        string address
        string phone
    }
    ACCOUNT {
        int account_no PK
        string type
        float balance
        date open_date
    }
    TRANSACTION {
        int trans_id PK
        float amount
        string type
        date trans_date
    }
    BRANCH {
        int branch_id PK
        string name
        string location
    }
    CUSTOMER ||--o{ ACCOUNT : has
    ACCOUNT ||--o{ TRANSACTION : includes
    BRANCH ||--o{ ACCOUNT : manages
    ACCOUNT }o--|| CUSTOMER : belongs_to

મુખ્ય એન્ટિટીઝ અને રિલેશનશિપ્સ:

  • ગ્રાહક: ગ્રાહક માહિતી સંગ્રહિત કરે છે
  • એકાઉન્ટ: વિવિધ એકાઉન્ટ પ્રકારો (સેવિંગ્સ, ચેકિંગ)
  • ટ્રાન્ઝેક્શન: ડિપોઝિટ, વિડ્રોઅલ રેકોર્ડ કરે છે
  • બ્રાન્ચ: વિવિધ બેંક સ્થાનો
  • રિલેશનશિપ્સ: ગ્રાહકો પાસે એકાઉન્ટ છે, એકાઉન્ટમાં ટ્રાન્ઝેક્શન છે, બ્રાન્ચ એકાઉન્ટ મેનેજ કરે છે

મનેમોનિક: “CATB: કસ્ટમર્સ એક્સેસ ટ્રાન્ઝેક્શન્સ એટ બ્રાન્ચીસ”

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

યોગ્ય ઉદાહરણ સાથે સ્પેશિયલાઈઝેશન અને જનરલાઈઝેશન વચ્ચેનો તફાવત સમજાવો

જવાબ:

વિચારદિશાવર્ણનઉદાહરણ
સ્પેશિયલાઈઝેશનટોપ-ડાઉનસામાન્ય એન્ટિટીને વધુ ચોક્કસ સબ-એન્ટિટીઓમાં વિભાજિત કરવુંવ્યક્તિ → વિદ્યાર્થી, કર્મચારી
જનરલાઈઝેશનબોટમ-અપસમાન એન્ટિટીઓને ઉચ્ચ-સ્તરીય એન્ટિટીમાં જોડવુંકાર, ટ્રક → વાહન
erDiagram
    PERSON {
        int person_id
        string name
        string address
    }
    STUDENT {
        string major
        float gpa
    }
    EMPLOYEE {
        string department
        float salary
    }
    PERSON ||--|| STUDENT : specializes
    PERSON ||--|| EMPLOYEE : specializes

મનેમોનિક: “SG-TD-BU: સ્પેશિયલાઈઝેશન ગોઝ ટોપ-ડાઉન, જનરલાઈઝેશન બિલ્ડ્સ અપ”

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

ચાસ્પ ટ્રેપની વ્યાખ્યા લખો. તે ક્યારે ઉદ્ભવે છે તે સમજાવો. ચાસ્પ ટ્રેપ માટેનો ઉપાય સમજાવો

જવાબ:

ચાસ્પ ટ્રેપ: ER ડાયાગ્રામમાં ઉદ્ભવતી સમસ્યા જ્યારે એન્ટિટીઓ વચ્ચે મલ્ટિપલ પાથ હોય છે, જેથી રિલેશનશિપના અર્થઘટનમાં અસ્પષ્ટતા આવે છે.

પાસુંવર્ણન
ઉદ્ભવજ્યારે એન્ટિટી પ્રકારો વચ્ચે બે અથવા વધુ અલગ પાથ હોય જે ચક્ર બનાવે છે
સમસ્યાઅયોગ્ય અથવા અસ્પષ્ટ ક્વેરી પરિણામો તરફ દોરી જાય છે
ઉકેલએક રિલેશનશિપને તોડવું અથવા ઇચ્છિત પાથને સ્પષ્ટ કરવા માટે કન્સ્ટ્રેન્ટ્સ ઉમેરવા
erDiagram
    STUDENT }|--|| SECTION : enrolled_in
    SECTION }|--|| COURSE : part_of
    STUDENT }|--o{ COURSE : studies

    %% Solution:
    %% Remove direct STUDENT to COURSE relationship
    %% Or add clear constraints

મનેમોનિક: “COP: સાયકલ્સ ઓફ પાથસ નીડ બ્રેકિંગ”

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

કોલેજ મેનેજમેન્ટ સિસ્ટમ માટે E-R ડાયાગ્રામ બનાવો

જવાબ:

erDiagram
    STUDENT {
        int student_id PK
        string name
        string address
        date dob
        string phone
    }
    DEPARTMENT {
        int dept_id PK
        string name
        string location
        string hod
    }
    FACULTY {
        int faculty_id PK
        string name
        string qualification
        date join_date
    }
    COURSE {
        int course_id PK
        string title
        int credits
        string description
    }
    EXAM {
        int exam_id PK
        date date
        string type
    }
    STUDENT }|--|| DEPARTMENT : belongs_to
    FACULTY }|--|| DEPARTMENT : works_in
    DEPARTMENT ||--o{ COURSE : offers
    FACULTY ||--o{ COURSE : teaches
    STUDENT }o--o{ COURSE : enrolls
    STUDENT }o--o{ EXAM : takes
    COURSE ||--o{ EXAM : has

મુખ્ય એન્ટિટીઝ અને રિલેશનશિપ્સ:

  • વિદ્યાર્થી: વિદ્યાર્થી વિગતો સંગ્રહિત કરે છે
  • વિભાગ: શૈક્ષણિક વિભાગો
  • ફેકલ્ટી: શિક્ષકો અને પ્રોફેસરો
  • કોર્સ: ભણાવવામાં આવતા વિષયો
  • પરીક્ષા: મૂલ્યાંકન કાર્યક્રમો
  • રિલેશનશિપ્સ: વિદ્યાર્થીઓ કોર્સમાં એનરોલ થાય છે, ફેકલ્ટી કોર્સ શીખવે છે, વિભાગો કોર્સ ઓફર કરે છે

મનેમોનિક: “SDFCE: સ્ટુડન્ટ્સ ડિલાઇટ ફેકલ્ટી બાય કમ્પ્લીટિંગ એક્ઝામ્સ”

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

GROUP BY ક્લોઝ ઉદાહરણ સાથે સમજાવો.

જવાબ:

GROUP BY ક્લોઝ સમાન મૂલ્યો ધરાવતી રો સારાંશ રોમાં જૂથ કરે છે.

ફીચરવર્ણન
હેતુએકસરખા ડેટાને એગ્રીગેટ ફંક્શન માટે જૂથોમાં ગોઠવે છે
ઉપયોગએગ્રીગેટ ફંક્શન (COUNT, SUM, AVG, MAX, MIN) સાથે વપરાય છે
સિન્ટેક્સSELECT column1, COUNT(*) FROM table GROUP BY column1;
SELECT department, AVG(salary) 
FROM employees
GROUP BY department;

મનેમોનિક: “GAS: ગ્રુપ એન્ડ સમરાઈઝ”

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

Data Definition Language (DDL) કમાન્ડની યાદી બનાવો. કોઈ પણ ૨ DDL કમાન્ડ ઉદાહરણ સાથે સમજાવો.

જવાબ:

DDL કમાન્ડ્સ: CREATE, ALTER, DROP, TRUNCATE, RENAME

કમાન્ડવર્ણનઉદાહરણ
CREATEડેટાબેઝ ઓબ્જેક્ટ્સ જેમ કે ટેબલ, વ્યૂ, ઇન્ડેક્સ બનાવે છેCREATE TABLE students (id INT PRIMARY KEY, name VARCHAR(50));
ALTERમૌજૂદા ડેટાબેઝ ઓબ્જેક્ટ્સ સુધારે છેALTER TABLE students ADD COLUMN email VARCHAR(100);
DROPડેટાબેઝ ઓબ્જેક્ટ્સ દૂર કરે છેDROP TABLE students;
TRUNCATEટેબલમાંથી બધા રેકોર્ડ્સ દૂર કરે છેTRUNCATE TABLE students;

મનેમોનિક: “CADTR: ક્રિએટ, ઓલ્ટર, ડ્રોપ, ટ્રન્કેટ, રીનેમ”

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

enr_no, name, percent, branch ફિલ્ડ ધરાવતા Students ટેબલ પર નીચેની Query perform કરો.

જવાબ:

-- ૧. Students ટેબલના તમામ રેકોર્ડ ડિસ્પ્લે કરો.
SELECT * FROM Students;

-- ૨. ડુપ્લીકેટ વેલ્યુ સિવાય માત્ર branch ડિસ્પ્લે કરો.
SELECT DISTINCT branch FROM Students;

-- ૩. name નાં ઉતરતા ક્રમમાં તમામ રેકોર્ડ ડિસ્પ્લે કરો.
SELECT * FROM Students ORDER BY name DESC;

-- ૪. સરનામું સ્ટોર કરવા માટે "address" નામથી નવી કોલમ ઉમેરો.
ALTER TABLE Students ADD address VARCHAR(100);

-- ૫. "ICT" બ્રાંચ ધરાવતા બધા વિદ્યાર્થીને ડિસ્પ્લે કરો.
SELECT * FROM Students WHERE branch = 'ICT';

-- ૬. ૬૦ કરતા ઓછા percent ધરાવતા વિદ્યાર્થીઓને ડીલીટ કરો.
DELETE FROM Students WHERE percent < 60;

-- ૭. "S" થી શરૂ થતા તમામ વિદ્યાર્થીઓના નામ ડિસ્પ્લે કરો.
SELECT * FROM Students WHERE name LIKE 'S%';
ક્વેરીહેતુ
SELECTટેબલમાંથી ડેટા મેળવે છે
DISTINCTડુપ્લિકેટ મૂલ્યો દૂર કરે છે
ORDER BYપરિણામોને ચોક્કસ ક્રમમાં ગોઠવે છે
ALTER TABLEટેબલ સ્ટ્રક્ચર સુધારે છે
WHEREશરતો પર આધારિત રેકોર્ડ્સ ફિલ્ટર કરે છે
DELETEશરતો મેળવતા રેકોર્ડ્સ દૂર કરે છે
LIKEસ્ટ્રિંગ તુલનામાં પેટર્ન મેચિંગ

મનેમોનિક: “SDOAWDL: સિલેક્ટ ડિસ્ટિંક્ટ ઓર્ડર ઓલ્ટર વ્હેર ડિલીટ લાઇક”

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

સિન્ટેક્સ અને ઉદાહરણ સાથે GRANT કમાન્ડ સમજાવો.

જવાબ:

GRANT કમાન્ડ વપરાશકર્તાઓને ડેટાબેઝ ઓબ્જેક્ટ્સ પર ચોક્કસ અધિકારો આપે છે.

ઘટકવર્ણન
સિન્ટેક્સGRANT privilege(s) ON object TO user [WITH GRANT OPTION];
પ્રિવિલેજીસSELECT, INSERT, UPDATE, DELETE, ALL PRIVILEGES
ઓબ્જેક્ટ્સટેબલ્સ, વ્યૂ, સિક્વેન્સિસ, વગેરે
GRANT SELECT, UPDATE ON employees TO user1;
GRANT ALL PRIVILEGES ON database_name.* TO user2 WITH GRANT OPTION;

મનેમોનિક: “GPO: ગ્રાન્ટ પ્રિવિલેજીસ ટુ અધર્સ”

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

Truncate અને Drop કમાન્ડનો તફાવત લખો.

જવાબ:

ફીચરTRUNCATEDROP
હેતુટેબલથી બધી પંક્તિઓ દૂર કરે છેસંપૂર્ણ ટેબલ સ્ટ્રક્ચર દૂર કરે છે
સ્ટ્રક્ચરટેબલ સ્ટ્રક્ચર જાળવી રાખે છેટેબલની વ્યાખ્યા સંપૂર્ણપણે દૂર કરે છે
રિકવરીસરળતાથી રોલબેક નથી કરી શકાતુંકમિટ થાય ત્યાં સુધી પુનઃપ્રાપ્ત કરી શકાય છે
સ્પીડDELETE કરતાં ઝડપીઝડપી ઓપરેશન
ટ્રિગર્સટ્રિગર્સ સક્રિય કરતું નથીટ્રિગર્સ સક્રિય કરતું નથી
-- Truncate ઉદાહરણ
TRUNCATE TABLE students;

-- Drop ઉદાહરણ
DROP TABLE students;

મનેમોનિક: “TRC-DST: ટ્રન્કેટ રિમૂવ્સ કન્ટેન્ટ્સ, ડ્રોપ ડિસ્ટ્રોય્સ સ્ટ્રક્ચર ટોટલી”

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

નીચેની Query ના આઉટપુટ લખો.

જવાબ:

ક્વેરીઆઉટપુટસમજૂતી
ABS(-23), ABS(49)23, 49નિરપેક્ષ મૂલ્ય પાછું આપે છે
SQRT(25), SQRT(81)5, 9વર્ગમૂળ પાછું આપે છે
POWER(3,2), POWER(-2,3)9, -8x^y (પ્રથમ મૂલ્યને બીજા મૂલ્યની પાવર સુધી ઉંચકે છે)
MOD(15,4), MOD(21,3)3, 0વિભાજન પછી શેષ પાછો આપે છે
ROUND(123.446,1), ROUND(123.456,2)123.4, 123.46ચોક્કસ દશાંશ જગ્યાઓ પર રાઉન્ડ કરે છે
CEIL(234.45), CEIL(-234.45)235, -234નજીકના પૂર્ણાંક સુધી ઉપર રાઉન્ડ કરે છે
FLOOR(-12.7), FLOOR(12.7)-13, 12નજીકના પૂર્ણાંક સુધી નીચે રાઉન્ડ કરે છે
SELECT ABS(-23), ABS(49);          -- 23, 49
SELECT SQRT(25), SQRT(81);         -- 5, 9
SELECT POWER(3,2), POWER(-2,3);    -- 9, -8
SELECT MOD(15,4), MOD(21,3);       -- 3, 0
SELECT ROUND(123.446,1), ROUND(123.456,2); -- 123.4, 123.46
SELECT CEIL(234.45), CEIL(-234.45);  -- 235, -234
SELECT FLOOR(-12.7), FLOOR(12.7);    -- -13, 12

મનેમોનિક: “ASPMRCF: એબ્સોલ્યુટ સ્ક્વેર પાવર મોડ્યુલો રાઉન્ડ સીલિંગ ફ્લોર”

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

SQLમાં ડેટા ટાઈપની યાદી બનાવો. કોઈ પણ ૨ ડેટા ટાઈપ ઉદાહરણ સાથે સમજાવો.

જવાબ:

SQL ડેટા ટાઈપ: INTEGER, FLOAT, VARCHAR, CHAR, DATE, DATETIME, BOOLEAN, BLOB

ડેટા ટાઈપવર્ણનઉદાહરણ
INTEGERદશાંશ પોઇન્ટ વિના પૂર્ણ સંખ્યાઓid INTEGER = 101
VARCHARપરિવર્તનશીલ-લંબાઈ સ્ટ્રિંગname VARCHAR(50) = 'John'
DATEતારીખ મૂલ્યો સંગ્રહિત કરે છે (YYYY-MM-DD)birth_date DATE = '2000-05-15'
FLOATફ્લોટિંગ પોઇન્ટ સાથે દશાંશ સંખ્યાઓsalary FLOAT = 45000.50
CREATE TABLE employees (
    id INTEGER,
    name VARCHAR(50),
    salary FLOAT
);

મનેમોનિક: “IVDB: ઈન્ટિજર અને વારચાર આર ડેટાબેઝ બેસિક્સ”

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

Full function dependency ઉદાહરણ સાથે સમજાવો.

જવાબ:

Full Function Dependency: જ્યારે Y, X પર ફંક્શનલી ડિપેન્ડન્ટ હોય, પરંતુ X ના કોઈ સબસેટ પર નહીં.

વિચારવર્ણનઉદાહરણ
વ્યાખ્યાએટ્રિબ્યુટ B, A પર પૂર્ણપણે ફંક્શનલી ડિપેન્ડન્ટ છે જો B સંપૂર્ણ A પર આધાર રાખે છેStudent_ID → Name (પૂર્ણ ડિપેન્ડન્સી)
નોન-ઉદાહરણજ્યારે એટ્રિબ્યુટ કોમ્પોઝિટ કીના માત્ર ભાગ પર આધાર રાખે છે{Student_ID, Course_ID} → Student_Name (આંશિક)
flowchart LR
    A[Student_ID] --> B[Student_Name]
    subgraph Full Function Dependency
    C[Course_ID] --> D[Course_Name]
    end
    subgraph Partial Function Dependency
    E[Student_ID, Course_ID] --> F[Student_Name]
    end

મનેમોનિક: “FFD: ફુલ, નોટ ફ્રેક્શન ઓફ ડિપેન્ડન્સી”

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

નોર્મલાઇઝેશનની વ્યાખ્યા આપો. 2NF (સેકન્ડ નોર્મલ ફોર્મ) ઉદાહરણ અને ઉકેલ સાથે સમજાવો.

જવાબ:

નોર્મલાઈઝેશન: ડેટાબેઝની રચના કરવાની પ્રક્રિયા જેથી મોટા ટેબલને નાના ટેબલોમાં વિભાજિત કરીને અને તેમની વચ્ચે સંબંધો વ્યાખ્યાયિત કરીને, રિડન્ડન્સી અને ડિપેન્ડન્સી ઘટાડવામાં આવે.

2NF (સેકન્ડ નોર્મલ ફોર્મ):

  • ટેબલ 2NF માં છે જો તે 1NF માં હોય અને કોઈ નોન-પ્રાઇમ એટ્રિબ્યુટ કેન્ડિડેટ કીના કોઈ પણ યોગ્ય સબસેટ પર આધાર રાખતું ન હોય.
2NF પહેલાંસમસ્યા
Order(Order_ID, Product_ID, Product_Name, Quantity, Price)Product_Name માત્ર Product_ID પર આધાર રાખે છે, સંપૂર્ણ કી પર નહીં
2NF પછીઉકેલ
Order(Order_ID, Product_ID, Quantity)માત્ર પૂર્ણ કી ડિપેન્ડન્સી
Product(Product_ID, Product_Name, Price)પ્રોડક્ટ વિગતો માત્ર Product_ID પર આધાર રાખે છે
erDiagram
    ORDER {
        int order_id
        int product_id
        int quantity
    }
    PRODUCT {
        int product_id
        string product_name
        float price
    }
    ORDER }o--|| PRODUCT : contains

મનેમોનિક: “2NF-PPD: પાર્શિયલ ડિપેન્ડન્સી પ્રોબ્લેમ્સ ડિવાઇડેડ”

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

કમાન્ડ સમજાવવો. ૧) To_Number (), ૨) To_Char()

જવાબ:

ફંક્શનહેતુસિન્ટેક્સઉદાહરણ
TO_NUMBER()સ્ટ્રિંગને નંબરમાં રૂપાંતરિત કરે છેTO_NUMBER(string, [format])TO_NUMBER('123.45') = 123.45
TO_CHAR()નંબર/તારીખને સ્ટ્રિંગમાં રૂપાંતરિત કરે છેTO_CHAR(value, [format])TO_CHAR(1234, '9999') = '1234'
-- સ્ટ્રિંગને નંબરમાં રૂપાંતરિત કરે છે
SELECT TO_NUMBER('123.45') FROM dual;  -- 123.45

-- તારીખને ફોર્મેટેડ સ્ટ્રિંગમાં રૂપાંતરિત કરે છે
SELECT TO_CHAR(SYSDATE, 'DD-MON-YYYY') FROM dual;  -- 20-JAN-2024

-- નંબરને ફોર્મેટેડ સ્ટ્રિંગમાં રૂપાંતરિત કરે છે
SELECT TO_CHAR(1234.56, '$9,999.99') FROM dual;  -- $1,234.56

મનેમોનિક: “NC: નંબર્સ એન્ડ કેરેક્ટર્સ કન્વર્ઝન”

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

1NF (ફર્સ્ટ નોર્મલ ફોર્મ) ઉદાહરણ અને ઉકેલ સાથે સમજાવો.

જવાબ:

1NF (ફર્સ્ટ નોર્મલ ફોર્મ): એક રિલેશન 1NF માં છે જો તેમાં કોઈ રિપીટિંગ ગ્રુપ્સ અથવા એરે ન હોય.

1NF પહેલાંસમસ્યા
Student(ID, Name, Courses)Courses કોલમમાં મલ્ટિપલ વેલ્યુ છે
ઉદાહરણ: (101, John, “Math,Science,History”)મલ્ટી-વેલ્યુડ એટ્રિબ્યુટ
1NF પછીઉકેલ
Student(ID, Name, Course)દરેક રોમાં એક કોર્સ
ઉદાહરણો: (101, John, Math), (101, John, Science), (101, John, History)એટોમિક વેલ્યુઝ
erDiagram
    STUDENT_BEFORE {
        int id
        string name
        string courses
    }
    STUDENT_AFTER {
        int id
        string name
        string course
    }

મનેમોનિક: “1NF-ARM: એટોમિક વેલ્યુઝ રિમૂવ મલ્ટિવેલ્યુઝ”

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

SQL માં Function dependency સમજાવો. Partial function dependency ઉદાહરણ સાથે સમજાવો.

જવાબ:

ફંક્શનલ ડિપેન્ડન્સી: એક સંબંધ જ્યાં એક એટ્રિબ્યુટ બીજા એટ્રિબ્યુટનું મૂલ્ય નક્કી કરે છે.

નોટેશન: X → Y (X, Y ને નક્કી કરે છે)

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

વિચારઉદાહરણસમજૂતી
કમ્પોઝિટ કી{Student_ID, Course_ID}સાથે મળીને પ્રાઇમરી કી બનાવે છે
પાર્શિયલ ડિપેન્ડન્સી{Student_ID, Course_ID} → Student_NameStudent_Name માત્ર Student_ID પર આધાર રાખે છે
સમસ્યાઅપડેટ એનોમલીઝ, ડેટા રિડન્ડન્સીએક જ વિદ્યાર્થીનું નામ ઘણા બધા કોર્સ માટે પુનરાવર્તિત થાય છે
flowchart LR
    A[Student_ID] --> B[Student_Name]
    C[Course_ID] --> D[Course_Name]
    E["Student_ID, Course_ID"] --> F[Grade]
    subgraph "Partial Dependency"
    A --> B
    end
    subgraph "Full Dependency"
    E --> F
    end

ઉકેલ: અલગ ટેબલોમાં વિભાજિત કરો જ્યાં દરેક નોન-કી એટ્રિબ્યુટ કી પર સંપૂર્ણપણે આધારિત હોય.

મનેમોનિક: “PD-CPK: પાર્શિયલ ડિપેન્ડન્સી - કમ્પોનન્ટ ઓફ પ્રાઇમરી કી”

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

Transaction નાં ગુણધર્મો ઉદાહરણ સાથે સમજાવો.

જવાબ:

Transaction ગુણધર્મો (ACID):

ગુણધર્મવર્ણનઉદાહરણ
એટોમિસિટીબધા ઓપરેશનો સફળતાપૂર્વક પૂર્ણ થાય છે અથવા એક પણ થતું નથીબેંક ટ્રાન્સફર: ડેબિટ અને ક્રેડિટ બંને થાય અથવા બંને ન થાય
કન્સિસ્ટન્સીડેટાબેઝ પહેલા અને પછી માન્ય સ્થિતિમાં રહે છેએકાઉન્ટ બેલેન્સ કન્સ્ટ્રેન્ટ્સ માન્ય રહે છે
આઇસોલેશનટ્રાન્ઝેક્શન એવી રીતે એક્ઝિક્યુટ થાય છે જાણે તે એકમાત્ર હોયબે યુઝર એક જ રેકોર્ડ અપડેટ કરી રહ્યા હોય ત્યારે દખલ કરતા નથી
ડ્યુરેબિલિટીકમિટ કરેલા ફેરફારો સિસ્ટમ નિષ્ફળતા પછી પણ ટકી રહે છેએકવાર પુષ્ટિ થઈ જાય, પછી વીજળી જતી રહે તો પણ ડિપોઝિટ યથાવત રહે છે
flowchart TD
    A[START TRANSACTION] --> B[Debit Account A]
    B --> C[Credit Account B]
    C --> D{Successful?}
    D -->|Yes| E[COMMIT]
    D -->|No| F[ROLLBACK]

મનેમોનિક: “ACID: એટોમિસિટી, કન્સિસ્ટન્સી, આઇસોલેશન, ડ્યુરેબિલિટી”

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

ઉપર Q.5 (b) માં આપેલ “Students” અને “CR” ટેબલનો ઉપયોગ કરીને સેટ ઓપરેટર દ્વારા નીચેની Query લખો.

જવાબ:

-- ૧. Students અથવા CR હોય તેવા વ્યક્તિઓની યાદી બનાવો.
SELECT Stnd_Name FROM Student
UNION
SELECT CR_Name FROM CR;

-- ૨. Students અને CR હોય તેવા વ્યક્તિઓની યાદી બનાવો.
SELECT Stnd_Name FROM Student
INTERSECT
SELECT CR_Name FROM CR;

-- ૩. Students હોય અને CR ન હોય માત્ર તેવા વ્યક્તિઓની યાદી બનાવો.
SELECT Stnd_Name FROM Student
MINUS
SELECT CR_Name FROM CR;

-- ૪. CR હોય અને Student ન હોય માત્ર તેવા વ્યક્તિઓની યાદી બનાવો.
SELECT CR_Name FROM CR
MINUS
SELECT Stnd_Name FROM Student;
સેટ ઓપરેટરહેતુઉદાહરણ માટે પરિણામ
UNIONબધી અલગ રો જોડે છેManoj, Rahil, Jiya, Rina, Jitesh, Priya
INTERSECTમાત્ર સામાન્ય રો પરત કરે છેManoj, Rina
MINUSપ્રથમ સેટમાં હોય પણ બીજા સેટમાં ન હોય તે રોRahil, Jiya
MINUS (ઊલટું)બીજા સેટમાં હોય પણ પહેલા સેટમાં ન હોય તે રોJitesh, Priya

મનેમોનિક: “UIMD: યુનિયન ઇન્ક્લૂડ્સ, માઈનસ ડિવાઈડ્સ”

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

Conflict serializability વિસ્તારથી સમજાવો.

જવાબ:

Conflict Serializability: એક શેડ્યૂલ કન્ફ્લિક્ટ સીરિયલાઇઝેબલ છે જો તેને નોન-કન્ફ્લિક્ટિંગ ઓપરેશન્સને સ્વેપ કરીને સીરિયલ શેડ્યૂલમાં રૂપાંતરિત કરી શકાય.

મુખ્ય વિચારોવર્ણન
કન્ફ્લિક્ટ ઓપરેશન્સબે ઓપરેશન કન્ફ્લિક્ટ કરે છે જો તેઓ એક જ ડેટા આઇટમને એક્સેસ કરે છે અને ઓછામાં ઓછું એક રાઇટ હોય
પ્રીસિડન્સ ગ્રાફટ્રાન્ઝેક્શન વચ્ચેના કન્ફ્લિક્ટને દર્શાવતો ડાયરેક્ટેડ ગ્રાફ
સીરિયલાઇઝેબલજો પ્રીસિડન્સ ગ્રાફમાં કોઈ સાયકલ ન હોય, તો શેડ્યૂલ કન્ફ્લિક્ટ સીરિયલાઇઝેબલ છે
flowchart LR
    subgraph "Transaction T1"
    A[Read X] --> B[Write X]
    end
    subgraph "Transaction T2"
    C[Read X] --> D[Write X]
    end
    subgraph "Conflicts"
    B --> C
    end

ઉદાહરણ:

  • T1: R(X), W(X)
  • T2: R(X), W(X)

સીરિયલાઇઝેબલ શેડ્યૂલ્સ:

  • T1 બાદ T2: R1(X), W1(X), R2(X), W2(X)
  • T2 બાદ T1: R2(X), W2(X), R1(X), W1(X)

નોન-સીરિયલાઇઝેબલ: R1(X), R2(X), W1(X), W2(X) - પ્રીસિડન્સ ગ્રાફમાં સાયકલ બનાવે છે

મનેમોનિક: “COPS: કન્ફ્લિક્ટ ઓપરેશન્સ પ્રોડ્યુસ સીરિયલાઇઝેબિલિટી”

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

Transaction નો concept ઉદાહરણ સાથે સમજાવો.

જવાબ:

ટ્રાન્ઝેક્શન: કામની એક તાર્કિક એકમ જે સંપૂર્ણપણે કરવું અથવા સંપૂર્ણપણે અનડૂ કરવું આવશ્યક છે.

ટ્રાન્ઝેક્શન તબક્કાઓવર્ણનઉદાહરણ
BEGINટ્રાન્ઝેક્શનની શરૂઆત ચિહ્નિત કરે છેSTART TRANSACTION
ઓપરેશન્સ એક્ઝિક્યુટડેટાબેઝ ઓપરેશન્સ (રીડ/રાઇટ)UPDATE account SET balance = balance - 1000 WHERE id = 123
COMMIT/ROLLBACKસફળતા/નિષ્ફળતા સાથે ટ્રાન્ઝેક્શન સમાપ્ત કરે છેCOMMIT અથવા ROLLBACK
flowchart TD
    A[BEGIN TRANSACTION] --> B[Read account balance]
    B --> C[Check if sufficient funds]
    C -->|Yes| D[Update account balance]
    D --> E[Create transaction record]
    E --> F[COMMIT]
    C -->|No| G[ROLLBACK]

ઉદાહરણ:

BEGIN TRANSACTION;
UPDATE accounts SET balance = balance - 1000 WHERE acc_no = 123;
UPDATE accounts SET balance = balance + 1000 WHERE acc_no = 456;
COMMIT;

મનેમોનિક: “BEC: બિગિન, એક્ઝિક્યુટ, કમિટ”

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

Equi-join સિન્ટેક્સ અને ઉદાહરણ સાથે સમજાવો.

જવાબ:

Equi-join: એક જોઈન ઓપરેશન જે સમાનતા કમ્પેરિઝન ઓપરેટરનો ઉપયોગ કરે છે.

ફીચરવર્ણન
સિન્ટેક્સSELECT columns FROM table1, table2 WHERE table1.column = table2.column;
હેતુમેચિંગ કોલમ વેલ્યુના આધારે બે ટેબલમાંથી રો જોડે છે
વૈકલ્પિકSELECT columns FROM table1 INNER JOIN table2 ON table1.column = table2.column;
-- પરંપરાગત સિન્ટેક્સ
SELECT s.name, d.dept_name 
FROM students s, departments d 
WHERE s.dept_id = d.dept_id;

-- INNER JOIN સિન્ટેક્સ
SELECT s.name, d.dept_name 
FROM students s INNER JOIN departments d 
ON s.dept_id = d.dept_id;

મનેમોનિક: “EQ-ME: ઇક્વાલિટી મેચિસ એન્ટ્રીસ”

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

View serializability વિસ્તારથી સમજાવો.

જવાબ:

View Serializability: એક શેડ્યૂલ વ્યૂ સીરિયલાઇઝેબલ છે જો તે કોઈ સીરિયલ શેડ્યૂલ સાથે વ્યૂ ઇક્વિવેલન્ટ હોય.

શરતવર્ણન
ઇનિશિયલ રીડજો T1 શેડ્યૂલ S માં ડેટા આઇટમ X ની પ્રારંભિક વેલ્યુ વાંચે છે, તો તેણે S’ શેડ્યૂલમાં પણ પ્રારંભિક વેલ્યુ વાંચવી જોઈએ
ફાઇનલ રાઇટજો T1, S માં ડેટા આઇટમ X નું અંતિમ લખાણ કરે છે, તો તેણે S’ માં પણ અંતિમ લખાણ કરવું જોઈએ
ડિપેન્ડન્સી પ્રિઝર્વેશનજો T1, S માં T2 દ્વારા લખાયેલ X ની વેલ્યુ વાંચે છે, તો તેણે S’ માં પણ T2 પાસેથી વાંચવું જોઈએ
flowchart TD
    A[Schedule S] --> B{View Equivalent?}
    B -->|Yes| C[View Serializable]
    B -->|No| D[Not View Serializable]

    subgraph "Read-Write Analysis"
    E[Initial Read Check]
    F[Final Write Check]
    G[Read-from-Write Check]
    end

તુલના:

  • કન્ફ્લિક્ટ સીરિયલાઇઝેબિલિટી: વધુ પ્રતિબંધિત, પરીક્ષણ કરવું સરળ (પ્રીસિડન્સ ગ્રાફ)
  • વ્યૂ સીરિયલાઇઝેબિલિટી: વધુ સામાન્ય, પરીક્ષણ કરવું વધુ મુશ્કેલ (NP-કમ્પ્લીટ)

વ્યૂ સીરિયલાઇઝેબલ પરંતુ કન્ફ્લિક્ટ સીરિયલાઇઝેબલ નહીં તેનું ઉદાહરણ:

  • T1: W(X)
  • T2: W(X)
  • T3: R(X)
  • શેડ્યૂલ: W1(X), W2(X), R3(X) - સીરિયલ શેડ્યૂલ T2,T1,T3 સાથે વ્યૂ ઇક્વિવેલન્ટ

મનેમોનિક: “VIR-FF: વ્યૂ પ્રિઝર્વ્સ ઇનિશિયલ રીડ્સ એન્ડ ફાઇનલ રાઇટ્સ”

સંબંધિત

ડેટા સ્ટ્રક્ચર અને એપ્લિકેશન (1333203) - વિન્ટર 2023 સોલ્યુશન
24 મિનિટ
અભ્યાસ-સામગ્રી સોલ્યુશન ડેટા-સ્ટ્રક્ચર 1333203 2023 વિન્ટર
કોમ્યુનિકેશન એન્જિનીયરિંગ (1333201) - વિન્ટર 2023 સોલ્યુશન
24 મિનિટ
અભ્યાસ-સામગ્રી ઉકેલો કોમ્યુનિકેશન-એન્જિનીયરિંગ 1333201 2023 વિન્ટર
પાયથોન પ્રોગ્રામિંગ (1323203) - સમર 2023 સોલ્યુશન
21 મિનિટ
અભ્યાસ-સામગ્રી સોલ્યુશન પાયથોન-પ્રોગ્રામિંગ 1323203 2023 સમર
કન્ઝ્યુમર ઇલેક્ટ્રોનિક્સ એન્ડ મેઇન્ટેનન્સ (4341107) - સમર 2023 સોલ્યુશન
19 મિનિટ
અભ્યાસ-સામગ્રી સોલ્યુશન કન્ઝ્યુમર-ઇલેક્ટ્રોનિક્સ 4341107 2023 સમર
ડિજિટલ કોમ્યુનિકેશન (4341102) - સમર 2023 સોલ્યુશન
20 મિનિટ
અભ્યાસ-સામગ્રી સોલ્યુશન ડિજિટલ-કોમ્યુનિકેશન 4341102 2023 સમર
ઇલેક્ટ્રોનિક્સ ડિવાઇસિસ એન્ડ સર્કિટ્સ (1323202) - સમર 2023 સોલ્યુશન
13 મિનિટ
અભ્યાસ-સામગ્રી ઉકેલો ઇલેક્ટ્રોનિક્સ 1323202 2023 સમર