From fce219500935afe3ac990f0be8f83b146f70fe23 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E6=97=AD=E9=98=B3TonyDong?= Date: Mon, 28 Sep 2020 21:47:04 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E6=96=B0=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- create_table.sql | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 create_table.sql diff --git a/create_table.sql b/create_table.sql new file mode 100644 index 0000000..34f4f14 --- /dev/null +++ b/create_table.sql @@ -0,0 +1,31 @@ +-- 创建 3 个示例表 +CREATE TABLE department + ( dept_id INTEGER NOT NULL PRIMARY KEY + , dept_name VARCHAR(50) NOT NULL + ) ; +CREATE TABLE job + ( job_id INTEGER NOT NULL PRIMARY KEY + , job_title VARCHAR(50) NOT NULL + ) ; +CREATE TABLE employee + ( emp_id INTEGER NOT NULL PRIMARY KEY + , emp_name VARCHAR(50) NOT NULL + , sex VARCHAR(10) NOT NULL + , dept_id INTEGER NOT NULL + , manager INTEGER + , hire_date DATE NOT NULL + , job_id INTEGER NOT NULL + , salary NUMERIC(8,2) NOT NULL + , bonus NUMERIC(8,2) + , email VARCHAR(100) NOT NULL + , CONSTRAINT ck_emp_sex CHECK (sex IN ('男', '女')) + , CONSTRAINT ck_emp_salary CHECK (salary > 0) + , CONSTRAINT uk_emp_email UNIQUE (email) + , CONSTRAINT fk_emp_dept FOREIGN KEY (dept_id) REFERENCES department(dept_id) + , CONSTRAINT fk_emp_job FOREIGN KEY (job_id) REFERENCES job(job_id) + , CONSTRAINT fk_emp_manager FOREIGN KEY (manager) REFERENCES employee(emp_id) + ) ; +CREATE INDEX idx_emp_name ON employee(emp_name); +CREATE INDEX idx_emp_dept ON employee(dept_id); +CREATE INDEX idx_emp_job ON employee(job_id); +CREATE INDEX idx_emp_manager ON employee(manager); -- GitLab