Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Fiz o mapeamento da atividade e Fiz o código, mas notei q da erro bem próximo as chaves. Sou iniciante, não tenho noção do erro , como o q é ou que pode ser.agradeço a ajuda!
CREATE TABLE CLIENTE(
cod_cliente INTEGER NOT NULL,
nome_cliente VARCHAR(30) NOT NULL,
num_pedido INTEGER,
PRIMARY KEY(COD_CLIENTE)
);
CREATE TABLE TELEFONE (
cod_cliente INTEGER NOT NULL,
telefone_fixo VARCHAR (10),
telefone_celular VARCHAR (10),
FOREIGN KEY ( COD_CLIENTE)
REFERENCES CLIENTE (COD_CLIENTE)
PRIMARY KEY ( COD_CLIENTE)
REFERENCES CLIENTE (COD_CLIENTE)
);
CREATE TABLE EMAIL_CLIENTE (
cod_cliente INTEGER NOT NULL,
email_cliente, VARCHAR (30),
email2_cliente VARCHAR (30),
FOREIGN KEY ( COD_CLIENTE)
REFERENCES CLIENTE ( COD_CLIENTE)
PRIMARY KEY ( COD_CLIENTE)
REFERENCES CLIENTE (COD_CLIENTE)
);
CREATE TABLE VENDA (
num_pedido INTEGER,
dt_pedido TIMESTAMP,
cod_pedido INTEGER,
PRIMARY KEY (NUM_PEDIDO)
FOREIGN KEY (COD_PRODUTO)
REFERENCES PRODUTO (COD_PRODUTO);
CREATE TABLE VENDA_CONTEM(
num_pedido INTEGER,
cod_produto INTEGER,
pco_produto NUMERIC (6,0),
qtd NUMERIC (6,0),
PRIMARY KEY (NUM_PEDIDO)
REFERENCES VENDA( NUM_PEDIDO)
FOREIGN KEY ( COD_PRODUTO)
REFERENCES PRODUTO ( COD_PRODUTO)
);
CREATE TABLE PRODUTO (
cod_produto INTEGER,
nom_produto VARCHAR (30) NOT NULL,
est_produto NUMERIC (6,0),
pco_produto NUMERIC (6,0),
fabricante VARCHAR (30),
FOREIGN KEY (NUM_PEDIDO)
REFERENCES COMPRA ( NUM_PEDIDO)
PRIMARY KEY (COD_PRODUTO)
);
CREATE TABLE COMPRA (
num_pedido INTEGER,
dta_pedido TIMESTAMP,
FOREIGN KEY (NUM_PEDIDO)
REFERENCES VENDA (NUM_PEDIDO)
PRIMARY KEY (NUM_PEDIDO)
REFERNCES VENDA(NUM_PEDIDO)
);
CREATE TABLE FORNECEDOR (
cod_fornecedor INTEGER,
nom_fornecedor VARCHAR (30) NOTT NULL,
rua_local VARCHAR (30),
numero_local VARCHAR (30),
PRIMARY KEY ( COD_FORNECEDOR)
);
CREATE TABLE TELEFONE_FORNECEDOR(
cod_fornecedor INTEGER,
telefone1 VARCHAR (10),
telefone2 VARCHAR (10),
FOREIGN KEY ( COD_FORNECEDOR)
REFERENCES FORNECEDOR ( COD_FORNECEDOR)
PRIMARY KEY ( COD_FORNECEDOR)
REFERENCES FORNECEDOR ( COD_FORNECEDOR)
);
CREATE TABLE EMAIL_FORNECEDOR (
cod_fornecedor INTEGER,
email1_fornecedor VARCHAR (30),
email2_fornecedor VARCHAR (30),
FOREIGN KEY (COD_FORNECEDOR)
REFERENCES FORNECEDOR ( COD_FORNECEDOR)
PRIMARY KEY ( COD_FORNECEDOR)
REFERENCES FORNECEDOR ( COD_FORNECEDOR)
);

Coloquei. Já não fez diferença. O erro continua
Segue o exemplo de uma fonte confiável.
Rode um "create" por vez.
1. nao existe "primary key... references".
2. algumas colunas estão sendo definidas como primary e foreign key ao mesmo tempo, ex: tabelas telefone e email_cliente. verifique isso, pq uma chave primaria tem que ser unica e nao nula, portanto o cliente será obrigado a ter um telefone e um email e apenas um...
Acho que tem uma vírgula entre as definições da PK e FK.