Blame |
Last modification |
View Log
| Download
| RSS feed
/*========tur======================================================*/
/* DBMS name: PostgreSQL 8 */
/* Criado em: 05/11/2014 */
/* Autor: Bruno Lopes Peixoto */
/*==============================================================*/
/*==============================================================*/
/* User: sc_sec */
/*==============================================================*/
CREATE USER sc_sec unencrypted password 'sc_sec';
CREATE schema sc_sec AUTHORIZATION sc_sec;
SET search_path = sc_sec;
CREATE SEQUENCE sq_formapagament
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_formapagament owner TO sc_sec;
CREATE SEQUENCE sq_lancamento
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_lancamento owner TO sc_sec;
CREATE SEQUENCE sq_loja
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_loja owner TO sc_sec;
CREATE SEQUENCE sq_pagamento
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_pagamento owner TO sc_sec;
CREATE SEQUENCE sq_pedido
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_pedido owner TO sc_sec;
CREATE SEQUENCE sq_pendencia
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_pendencia owner TO sc_sec;
CREATE SEQUENCE sq_produto
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_produto owner TO sc_sec;
CREATE SEQUENCE sq_usuario
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_usuario owner TO sc_sec;
CREATE SEQUENCE sq_venda
INCREMENT 1
minvalue 1
maxvalue 99999999
START 1;
ALTER TABLE sq_venda owner TO sc_sec;
/*==============================================================*/
/* Table: sec_forma_pagamento */
/*==============================================================*/
CREATE TABLE sec_forma_pagamento (
seq_formapagament INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_formapagament'::regclass),
dsc_formapagament VARCHAR(120) NULL,
ind_ativo BOOL NOT NULL,
CONSTRAINT pk_formapagament PRIMARY KEY (seq_formapagament)
);
-- set table ownership
ALTER TABLE sec_forma_pagamento owner TO sc_sec
;
/*==============================================================*/
/* Table: sec_lancamento */
/*==============================================================*/
CREATE TABLE sec_lancamento (
seq_lancamento INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_lancamento'::regclass),
seq_venda INT4 NOT NULL,
cod_produto VARCHAR(20) NULL,
dsc_produto VARCHAR(120) NULL,
dsc_categoria VARCHAR(120) NULL,
val_compra NUMERIC(10,2) NULL,
val_varejo NUMERIC(10,2) NULL,
val_venda NUMERIC(10,2) NULL,
dsc_observacao VARCHAR(120) NULL,
ind_retirado_face BOOL NOT NULL,
ind_retirado_site BOOL NOT NULL,
ind_avaria BOOL NOT NULL,
ind_ativo BOOL NOT NULL,
CONSTRAINT pk_lancamento PRIMARY KEY (seq_lancamento)
);
-- set table ownership
ALTER TABLE sec_lancamento owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_lancamento_venda */
/*==============================================================*/
CREATE INDEX ix_lancamento_venda ON sec_lancamento (
seq_venda
);
/*==============================================================*/
/* Table: sec_loja */
/*==============================================================*/
CREATE TABLE sec_loja (
seq_loja INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_loja'::regclass),
dsc_loja VARCHAR(120) NULL,
CONSTRAINT pk_loja PRIMARY KEY (seq_loja)
);
-- set table ownership
ALTER TABLE sec_loja owner TO sc_sec
;
/*==============================================================*/
/* Table: sec_pagamento */
/*==============================================================*/
CREATE TABLE sec_pagamento (
seq_pagamento INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_pagamento'::regclass),
seq_loja INT4 NOT NULL,
dsc_pagamento VARCHAR(120) NULL,
val_pagamento NUMERIC(10,2) NULL,
dat_pagamento DATE NOT NULL,
ind_ativo BOOL NOT NULL,
CONSTRAINT pk_pagamento PRIMARY KEY (seq_pagamento)
);
-- set table ownership
ALTER TABLE sec_pagamento owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_pagamento_loja */
/*==============================================================*/
CREATE INDEX ix_pagamento_loja ON sec_pagamento (
seq_loja
);
/*==============================================================*/
/* Table: sec_pedido */
/*==============================================================*/
CREATE TABLE sec_pedido (
seq_pedido INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_pedido'::regclass),
dsc_produto VARCHAR(120) NULL,
dat_pedido DATE NULL,
dsc_nome_cliente VARCHAR(120) NULL,
dsc_contato VARCHAR(120) NULL,
dsc_telefone VARCHAR(20) NULL,
ind_ativo BOOL NOT NULL,
CONSTRAINT pk_pedido PRIMARY KEY (seq_pedido)
);
-- set table ownership
ALTER TABLE sec_pedido owner TO sc_sec
;
/*==============================================================*/
/* Table: sec_pendencia */
/*==============================================================*/
CREATE TABLE sec_pendencia (
seq_pendencia INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_pendencia'::regclass),
seq_loja INT4 NOT NULL,
dsc_pendencia VARCHAR(120) NULL,
ind_finalizado BOOL NOT NULL,
dat_pendencia DATE NOT NULL,
CONSTRAINT pk_pendencia PRIMARY KEY (seq_pendencia)
);
-- set table ownership
ALTER TABLE sec_pendencia owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_pendencia_loja */
/*==============================================================*/
CREATE INDEX ix_pendencia_loja ON sec_pendencia (
seq_loja
);
/*==============================================================*/
/* Table: sec_produto */
/*==============================================================*/
CREATE TABLE sec_produto (
seq_produto INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_produto'::regclass),
cod_produto VARCHAR(20) NULL,
dsc_produto VARCHAR(120) NULL,
dsc_categoria VARCHAR(120) NULL,
val_compra NUMERIC(10,2) NULL,
val_varejo NUMERIC(10,2) NULL,
qtd_estoque NUMERIC(5) NULL,
CONSTRAINT pk_produto PRIMARY KEY (seq_produto)
);
-- set table ownership
ALTER TABLE sec_produto owner TO sc_sec
;
/*==============================================================*/
/* Table: sec_usuario */
/*==============================================================*/
CREATE TABLE sec_usuario (
seq_usuario INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_usuario'::regclass),
dsc_nome VARCHAR(120) NULL,
dsc_login VARCHAR(32) NOT NULL,
dsc_senha VARCHAR(32) NOT NULL,
ind_admin BOOL NOT NULL,
ind_ativo BOOL NOT NULL,
CONSTRAINT pk_usuario PRIMARY KEY (seq_usuario)
);
-- set table ownership
ALTER TABLE sec_usuario owner TO sc_sec
;
/*==============================================================*/
/* Table: sec_venda */
/*==============================================================*/
CREATE TABLE sec_venda (
seq_venda INT8 NOT NULL DEFAULT NEXTVAL('sc_sec.sq_venda'::regclass),
seq_loja INT4 NOT NULL,
seq_usuario INT4 NOT NULL,
dth_venda TIMESTAMP WITH TIME ZONE NOT NULL,
dsc_observacao VARCHAR(120) NULL,
tip_situacao CHAR(1) NOT NULL
CONSTRAINT ck_venda_situacao CHECK (tip_situacao IN ('N','C','R','A','F','P')),
ind_ativo BOOL NOT NULL,
CONSTRAINT pk_venda PRIMARY KEY (seq_venda)
);
comment ON COLUMN sec_venda.tip_situacao IS
'Valores possíveis:
N - NOVO
C - CONFERIDO
R - À RECEBER
A - AGUARDANDO CARTÃO
F - FINALIZADO
P - COM PENDÊNCIAS';
-- set table ownership
ALTER TABLE sec_venda owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_venda_loja */
/*==============================================================*/
CREATE INDEX ix_venda_loja ON sec_venda (
seq_loja
);
/*==============================================================*/
/* Index: ix_venda_usuario */
/*==============================================================*/
CREATE INDEX ix_venda_usuario ON sec_venda (
seq_usuario
);
/*==============================================================*/
/* Table: sec_venda_formapagament */
/*==============================================================*/
CREATE TABLE sec_venda_formapagament (
seq_venda INT4 NOT NULL,
seq_formapagament INT4 NOT NULL,
val_pagamento NUMERIC(10,2) NOT NULL,
CONSTRAINT pk_vendaformapag PRIMARY KEY (seq_venda, seq_formapagament)
);
-- set table ownership
ALTER TABLE sec_venda_formapagament owner TO sc_sec
;
/*==============================================================*/
/* Index: ix_vendaformapag */
/*==============================================================*/
CREATE UNIQUE INDEX ix_vendaformapag ON sec_venda_formapagament (
seq_venda,
seq_formapagament
);
ALTER TABLE sec_lancamento
ADD CONSTRAINT fk_lancamento_venda FOREIGN KEY (seq_venda)
REFERENCES sec_venda (seq_venda);
ALTER TABLE sec_pagamento
ADD CONSTRAINT fk_pagamento_loja FOREIGN KEY (seq_loja)
REFERENCES sec_loja (seq_loja);
ALTER TABLE sec_pendencia
ADD CONSTRAINT fk_pendencia_loja FOREIGN KEY (seq_loja)
REFERENCES sec_loja (seq_loja);
ALTER TABLE sec_venda
ADD CONSTRAINT fk_venda_loja FOREIGN KEY (seq_loja)
REFERENCES sec_loja (seq_loja);
ALTER TABLE sec_venda
ADD CONSTRAINT fk_venda_usuario FOREIGN KEY (seq_usuario)
REFERENCES sec_usuario (seq_usuario);
ALTER TABLE sec_venda_formapagament
ADD CONSTRAINT fk_vendaformapag_formapagament FOREIGN KEY (seq_formapagament)
REFERENCES sec_forma_pagamento (seq_formapagament);
ALTER TABLE sec_venda_formapagament
ADD CONSTRAINT fk_vendaformapag_venda FOREIGN KEY (seq_venda)
REFERENCES sec_venda (seq_venda);
SET search_path = public;