สิทธิ์การเข้าถึงระดับ Schema
สมาชิกใหม่ของทีมพัฒนาซอฟต์แวร์ต่างกระตือรือร้นที่จะเริ่มงานโปรเจกต์ระบบจัดการสินเชื่อ แต่ Sandra ในฐานะหัวหน้าทีมไม่สบายใจที่จะให้หลายคนเข้าถึงฐานข้อมูลสินเชื่อเวอร์ชัน production โดยตรง (ใน schema public) ทีมที่กำลังขยายตัวอย่างรวดเร็วจึงต้องนำแนวทางปฏิบัติที่ดีสำหรับการพัฒนาซอฟต์แวร์มาใช้ ซึ่งรวมถึงการจัดตั้งสภาพแวดล้อมสำหรับพัฒนาที่แยกออกจาก production ในแบบฝึกหัดนี้ คุณจะสร้าง schema ใหม่เพื่อแทนสภาพแวดล้อมสำหรับพัฒนา และกำหนดสิทธิ์การเข้าถึง schema นี้ให้กับสมาชิกในทีมพัฒนาซอฟต์แวร์
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การสร้างฐานข้อมูล PostgreSQL
คำแนะนำการฝึกหัด
- สร้าง schema ใหม่ชื่อ
development - กำหนดสิทธิ์ usage บน schema
developmentให้กับdev_team - สร้างตาราง
loanเวอร์ชันหนึ่งไว้ใน schemadevelopment - กำหนดสิทธิ์
SELECT,INSERT,UPDATEและDELETEให้กับกลุ่มdev_teamสำหรับทุกตารางใน schemadevelopment
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
-- Create the development schema
___ ___ ___;
-- Grant usage privilege on new schema to dev_team
___ ___ ON SCHEMA ___ TO ___;
-- Create a loan table in the development schema
___ ___ ___.___ (
borrower_id INTEGER,
bank_id INTEGER,
approval_date DATE,
program text NOT NULL,
max_amount DECIMAL(9,2) NOT NULL,
gross_approval DECIMAL(9, 2) NOT NULL,
term_in_months SMALLINT NOT NULL,
revolver_status BOOLEAN NOT NULL,
bank_zip VARCHAR(10) NOT NULL,
initial_interest_rate DECIMAL(4, 2) NOT NULL
);
-- Grant privileges on development schema
___ ___, ___, ___, ___ ON ALL TABLES IN SCHEMA ___ TO ___;