-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCreate Tables.sql
More file actions
144 lines (121 loc) · 3.45 KB
/
Create Tables.sql
File metadata and controls
144 lines (121 loc) · 3.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
BEGIN TRANSACTION
CREATE DATABASE DevariaCandies;
--COMMIT
--ROLLBACK
BEGIN TRANSACTION
CREATE TABLE Cliente
(
Codigo int Identity (1,1) NOT NULL,
CPF CHAR(11) NOT NULL,
Nome VARCHAR(40),
Email VARCHAR(40),
Telefone CHAR(11),
Celular CHAR(11),
CEP CHAR(8),
Logadouro VARCHAR(40),
Estado CHAR(2),
Cidade VARCHAR(35),
CONSTRAINT PK_CodigoCliente PRIMARY KEY (Codigo)
)
CREATE TABLE Fidelidade
(
Codigo_Cliente int,
Data_Adesao DATETIME NOT NULL,
Pontos INT,
CONSTRAINT PK_CodigoClienteFidelidade PRIMARY KEY (Codigo_Cliente),
CONSTRAINT FK_CodigoCliente_Fidelidade FOREIGN KEY (Codigo_Cliente) REFERENCES Cliente(Codigo)
)
CREATE TABLE Forma_Pagamento
(
Codigo INT IDENTITY (1,1) NOT NULL,
Nome VARCHAR(25),
Tipo VARCHAR(25),
CONSTRAINT PK_CodigoPagamento PRIMARY KEY (Codigo)
)
CREATE TABLE Marca
(
Codigo INT IDENTITY(1,1) NOT NULL,
Nome VARCHAR(20),
Empresa VARCHAR(30),
CONSTRAINT PK_CodigoMarca PRIMARY KEY (Codigo)
)
CREATE TABLE Produto
(
Codigo INT IDENTITY(1,1) NOT NULL,
Nome VARCHAR(30),
Descricao VARCHAR(MAX),
Codigo_Marca INT NOT NULL,
CONSTRAINT PK_CodigoProduto PRIMARY KEY (Codigo),
CONSTRAINT FK_CodigoMarca FOREIGN KEY (Codigo_Marca) REFERENCES Marca(codigo)
)
CREATE TABLE Pedido_Venda
(
Codigo INT IDENTITY(1,1) NOT NULL,
Valor DECIMAL(6,2),
Valor_Imposto DECIMAL(6,2),
Data DATETIME NOT NULL,
Codigo_Forma_Pagamento INT NOT NULL,
Codigo_Cliente INT NOT NULL,
CONSTRAINT PK_CodigoVenda PRIMARY KEY (Codigo),
CONSTRAINT FK_CodigoFormaPagamento FOREIGN KEY (Codigo_Forma_Pagamento) REFERENCES Forma_Pagamento(Codigo),
CONSTRAINT FK_CodigoCliente FOREIGN KEY (Codigo_Cliente) REFERENCES Cliente(Codigo)
)
CREATE TABLE Item_Pedido_Venda
(
Codigo INT IDENTITY(1,1) NOT NULL,
Valor_Total DECIMAL(6,2),
Valor_Imposto DECIMAL(6,2),
Valor_Unitario DECIMAL(6,2),
Quantidade int,
Codigo_Produto INT NOT NULL,
Codigo_Pedido_Venda INT NOT NULL,
CONSTRAINT PK_CodigoPedidoVenda PRIMARY KEY (Codigo),
CONSTRAINT FK_CodigoProdutoVenda FOREIGN KEY (Codigo_Produto) REFERENCES Produto(Codigo),
CONSTRAINT FK_CodigoVenda FOREIGN KEY (Codigo_Pedido_Venda) REFERENCES Pedido_Venda(Codigo)
)
CREATE TABLE Distribuidor
(
Codigo INT IDENTITY(1,1) NOT NULL,
CNPJ VARCHAR(14) NOT NULL,
Nome_Fantasia VARCHAR(40) NOT NULL,
Razao_Social VARCHAR(40) NOT NULL,
CEP NCHAR(8),
Logadouro VARCHAR(40),
Estado CHAR(2),
Cidade VARCHAR(35),
CONSTRAINT PK_CodigoDistribuidor PRIMARY KEY (Codigo)
)
CREATE TABLE Pedido_Compra
(
Codigo INT IDENTITY(1,1) NOT NULL,
Data DATETIME NOT NULL,
Valor DECIMAL(6,2),
Entregue BIT,
Codigo_Distribuidor INT NOT NULL,
CONSTRAINT PK_CodigoPedido_Venda PRIMARY KEY (Codigo),
CONSTRAINT FK_CodigoDistribuidor FOREIGN KEY (Codigo_Distribuidor) REFERENCES Distribuidor(Codigo)
)
CREATE TABLE Item_Pedido_Compra
(
Codigo INT IDENTITY(1,1) NOT NULL,
ValorTotal DECIMAL(6,2),
ValorUnitario DECIMAL(6,2),
Quantidade int,
Codigo_Produto INT NOT NULL,
Codigo_Pedido_Compra INT NOT NULL,
CONSTRAINT PK_CodigoItemPedidoVenda PRIMARY KEY (Codigo),
CONSTRAINT FK_CodigoProdutoCompra FOREIGN KEY (Codigo_Produto) REFERENCES Produto(Codigo),
CONSTRAINT FK_CodigoPedidoCompraItem FOREIGN KEY (Codigo_Pedido_Compra) REFERENCES Pedido_Compra(Codigo),
)
--COMMIT
--ROLLBACK
SELECT * FROM Cliente
SELECT * FROM Fidelidade
SELECT * FROM Forma_Pagamento
SELECT * FROM Marca
SELECT * FROM Produto
SELECT * FROM Pedido_Venda
SELECT * FROM Distribuidor
SELECT * FROM Pedido_Compra
SELECT * FROM Item_Pedido_Compra
SELECT * FROM Item_Pedido_Compra