Bắt đầu ngayBắt đầu miễn phí

Cải thiện ánh xạ đối tượng–dữ liệu

Bảng client của Small Business Development Center trước đó được định nghĩa mà không có người liên hệ chính của khách hàng. Phản xạ ban đầu của nhóm cơ sở dữ liệu là chỉ cần thêm các cột contact_namecontact_email vào bảng client. Tuy nhiên, bạn phản đối kế hoạch này dựa trên trực giác về cách tổ chức dữ liệu đúng đắn. Trong tương lai, một contact có thể được tham chiếu ở nhiều bảng. Trong bài tập này, bạn sẽ xác định cấu trúc bảng cho thông tin khách hàng (client) và liên hệ (contact) nhằm tách bạch tốt hơn các đối tượng clientcontact.

Nhắc lại định nghĩa trước đây của bảng client:

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

Bài tập này là một phần của khóa học

Tạo cơ sở dữ liệu PostgreSQL

Xem khóa học

Hướng dẫn bài tập

  • Tạo bảng contact với các cột id (khóa chính), name (độ dài tối đa 50) và email (độ dài tối đa 50).
  • Sửa bảng client bằng cách thêm cột contact_id làm khóa ngoại.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

-- 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);
Chỉnh sửa và Chạy Mã