शुरू करेंमुफ़्त में शुरू करें

object-to-data mapping में सुधार

Small Business Development Center की client टेबल पहले बिना किसी client के point of contact के परिभाषित की गई थी। डेटाबेस टीम की शुरुआती सोच थी कि client टेबल में सीधे contact_name और contact_email कॉलम जोड़ दिए जाएँ। हालाँकि, आप सही data organization को ध्यान में रखते हुए इस योजना पर आपत्ति करते हैं। भविष्य में, किसी contact का संदर्भ कई टेबलों में आ सकता है। इस अभ्यास में, आप client और contact जानकारी के लिए ऐसी टेबल संरचनाएँ परिभाषित करेंगे जो client और contact ऑब्जेक्ट्स को बेहतर तरीके से अलग करती हैं।

client टेबल की पिछली परिभाषा याद करें:

CREATE TABLE client (
    id SERIAL PRIMARY KEY,
    name VARCHAR(50),
    site_url VARCHAR(50),
    num_employees SMALLINT,
    num_customers INTEGER
);

यह अभ्यास पाठ्यक्रम का हिस्सा है

PostgreSQL डेटाबेस बनाना

पाठ्यक्रम देखें

अभ्यास निर्देश

  • contact टेबल बनाएँ, जिसमें कॉलम हों: id (primary key), name (अधिकतम लंबाई 50), और email (अधिकतम लंबाई 50).
  • client टेबल को alter करें और contact_id कॉलम एक foreign key के रूप में जोड़ें.

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

-- Create the contact table
___ ___ ___ (
  	-- Define the id primary key column
	___ SERIAL ___ ___,
  	-- Define the name column
  	___ ___(50) NOT NULL,
    -- Define the email column
  	___ VARCHAR(___) NOT NULL
);

-- Add contact_id to the client table
ALTER TABLE ___ ADD ___ INTEGER NOT NULL;

-- Add a FOREIGN KEY constraint to the client table
ALTER TABLE ___ ADD CONSTRAINT fk_c_id FOREIGN KEY (___) REFERENCES ___(id);
कोड संपादित करें और चलाएँ