Posts

Showing posts from 2020

Create Table orders

CREATE   FUNCTION  orders_on_create()  RETURNS  trigger      LANGUAGE  plpgsql      AS  $$ BEGIN    NEW.remain_payment = NEW.total - (NEW.cash + NEW.payments);    NEW.updated_at =  now ();     RETURN  NEW; END ; $$;  CREATE   SEQUENCE  orders_sequence AS   INT START   1 INCREMENT  BY   1 NO  MINVALUE NO  MAXVALUE CACHE  1 ; CREATE   TABLE  orders ( id  INT   NOT   NULL   DEFAULT  nextval( 'orders_sequence' ::regclass), customer_id  SMALLINT   NOT   NULL , sales_id  SMALLINT   NOT   NULL , due_date  TIMESTAMP   NOT   NULL , total  NUMERIC ( 11 , 2 )  NOT   NULL , cash  NUMERIC ( 11 , 2 )  NOT   NULL , payments  NUMERIC ( 11 , 2 )  NOT   NULL , remain_pay...

Create Table Payments

CREATE   SEQUENCE  payments_sequence AS   INT START   1 INCREMENT  BY   1 NO  MINVALUE NO  MAXVALUE CACHE  1 ; CREATE   TABLE  payments ( id  INT   NOT   NULL   DEFAULT  nextval( 'payments_sequence' ::regclass), order_id  INT   NOT   NULL , method_id  SMALLINT   NOT   NULL , amount  NUMERIC ( 11 , 2 )  NOT   NULL , created_at  TIMESTAMP   NOT   NULL , updated_at  TIMESTAMP   NOT   NULL ); ALTER   TABLE  ONLY payments     ADD   CONSTRAINT  pk_payments  PRIMARY   KEY  (id); CREATE   INDEX  payments_ix_orders  ON  payments    USING  btree (order_id); CREATE  TRIGGER payments_trig_create    BEFORE   INSERT   ON  payments FOR EACH  ROW    EXECUTE   FUNCTION  timestamp_on_c...

Create Table Sales

CREATE   SEQUENCE  sales_sequence AS   SMALLINT START   1 INCREMENT  BY   1 NO  MINVALUE NO  MAXVALUE CACHE  1 ; CREATE   TABLE  sales ( id  INT   NOT   NULL   DEFAULT  nextval( 'sales_sequence' ::regclass), name   VARCHAR ( 50 )  NOT   NULL , street  VARCHAR ( 128 ), city  VARCHAR ( 50 )  NOT   NULL , phone  VARCHAR ( 25 )  NOT   NULL , cell  VARCHAR ( 25 ), zip  VARCHAR ( 6 ), created_at  TIMESTAMP   NOT   NULL , updated_at  TIMESTAMP   NOT   NULL ); ALTER   TABLE  ONLY sales    ADD   CONSTRAINT  pk_sales  PRIMARY   KEY  (id); CREATE  TRIGGER sales_trig_create    BEFORE   INSERT   ON  sales FOR EACH  ROW    EXECUTE   FUNCTION  timestamp_on_create(); CREATE  TRIGGER sales_trig_update BE...