Sei sulla pagina 1di 3

DROP TABLE IF EXISTS yudi.

officer;
CREATE TABLE yudi.officer
(
id integer NOT NULL,
code character varying(2) NOT NULL,
name character varying(50),
CONSTRAINT pk_officer PRIMARY KEY (id),
CONSTRAINT officer_code_key UNIQUE (code)
);
DROP TABLE IF EXISTS yudi.employees;
CREATE TABLE yudi.employees
(
id integer NOT NULL,
code character varying(2) NOT NULL,
name character varying(100) NOT NULL,
officer_code character varying(2) NOT NULL,
gender character varying(1),
account_name character varying(100),
acc_password character varying(100),
registered_date timestamp without time zone,
registered_by character varying(100) NOT NULL,
modified_date timestamp without time zone,
modified_by character varying(100) NOT NULL,
active_status character varying(1) NOT NULL,
CONSTRAINT pk_emploees PRIMARY KEY (id),
CONSTRAINT fk_officer FOREIGN KEY (officer_code)
REFERENCES yudi.officer (code) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
DROP TABLE IF EXISTS yudi.product_category;
CREATE TABLE yudi.product_category
(
id integer NOT NULL,
code character varying(2) NOT NULL,
name character varying(100) NOT NULL,
registered_date timestamp without time zone,
registered_by character varying(100) NOT NULL,
modified_date timestamp without time zone,
modified_by character varying(100) NOT NULL,
active_status character varying(1) NOT NULL,
CONSTRAINT pk_category PRIMARY KEY (id),
CONSTRAINT product_category_code_key UNIQUE (code)
);
DROP TABLE IF EXISTS yudi.product;
CREATE TABLE yudi.product
(
id integer NOT NULL,
code character varying(2) NOT NULL,
category_code character varying(2) NOT NULL,
name character varying(100) NOT NULL,
price numeric NOT NULL,
registered_date timestamp without time zone,
registered_by character varying(100) NOT NULL,
modified_date timestamp without time zone,
modified_by character varying(100) NOT NULL,
active_status character varying(1) NOT NULL,
CONSTRAINT pk_product PRIMARY KEY (id),
CONSTRAINT fk_product FOREIGN KEY (category_code)
REFERENCES yudi.product_category (code) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
DROP TABLE IF EXISTS yudi.branch;
CREATE TABLE yudi.branch
(
id integer NOT NULL,
code character varying(2) NOT NULL,
name character varying(100) NOT NULL,
registered_date timestamp without time zone,
registered_by character varying(100) NOT NULL,
modified_date timestamp without time zone,
modified_by character varying(100) NOT NULL,
active_status character varying(1) NOT NULL,
CONSTRAINT pk_branch PRIMARY KEY (id),
CONSTRAINT unique_code UNIQUE (code)
);
DROP TABLE IF EXISTS yudi.store;
CREATE TABLE yudi.store
(
id integer NOT NULL,
code character varying(2) NOT NULL,
branch_code character varying(2),
name character varying(100) NOT NULL,
registered_date timestamp without time zone,
registered_by character varying(100) NOT NULL,
modified_date timestamp without time zone,
modified_by character varying(100) NOT NULL,
CONSTRAINT pk_store PRIMARY KEY (id),
CONSTRAINT fk_branch FOREIGN KEY (branch_code)
REFERENCES yudi.branch (code) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);
DROP TABLE IF EXISTS yudi.sales_header;
CREATE TABLE yudi.sales_header
(
id integer NOT NULL,
code character varying(2),
store_code character varying(2),
sales_status character varying(1),
issuer_date timestamp without time zone,
issuer_by character varying(100) NOT NULL,
modified_date timestamp without time zone,
modified_by character varying(100) NOT NULL,
CONSTRAINT pk_sales_hdr PRIMARY KEY (id),
CONSTRAINT sales_header_code_key UNIQUE (code)
);
DROP TABLE IF EXISTS yudi.sales_detail;
CREATE TABLE yudi.sales_detail
(
id integer NOT NULL,
code character varying(2) NOT NULL,
header_code character varying(2) NOT NULL,
product_code character varying(2),
quantity integer,
tax numeric(128,0),
discount numeric(128,0),
CONSTRAINT pk_sales_dtl PRIMARY KEY (id),
CONSTRAINT fk_sales_dtl FOREIGN KEY (header_code)
REFERENCES yudi.sales_header (code) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION
);

Potrebbero piacerti anche