diog0silva
Power Member
Boas.
Tenho uma BD simples, para gerir compras de produtos. A compra pode ser efectuado por um cliente ou por um funcionário. Eu quero que, ao apagar um registo da tabela funcionários, apague todas as compras que ele fez. O mesmo para o cliente.
Tenho o seguinte comando SQL, mas que não está a funcionar:
CREATE TABLE tab_compras (
cp_num INT IDENTITY (1,1) NOT NULL PRIMARY KEY,
cp_clt_num INT,
cp_func_num INT,
cp_prod_cod INT NOT NULL,
cp_data DATE NOT NULL,
cp_quantidade INT NOT NULL,
FOREIGN KEY (cp_clt_num) REFERENCES tab_cliente (clt_num) ON DELETE CASCADE,
FOREIGN KEY (cp_func_num) REFERENCES tab_funcionario (func_num) ON DELETE CASCADE,
FOREIGN KEY (cp_prod_cod) REFERENCES tab_produto (prod_cod)
);
Se eu tirar um dos 'ON DELETE CASCADE', não dá erro. Alguém pode ajudar?
Tenho uma BD simples, para gerir compras de produtos. A compra pode ser efectuado por um cliente ou por um funcionário. Eu quero que, ao apagar um registo da tabela funcionários, apague todas as compras que ele fez. O mesmo para o cliente.
Tenho o seguinte comando SQL, mas que não está a funcionar:
CREATE TABLE tab_compras (
cp_num INT IDENTITY (1,1) NOT NULL PRIMARY KEY,
cp_clt_num INT,
cp_func_num INT,
cp_prod_cod INT NOT NULL,
cp_data DATE NOT NULL,
cp_quantidade INT NOT NULL,
FOREIGN KEY (cp_clt_num) REFERENCES tab_cliente (clt_num) ON DELETE CASCADE,
FOREIGN KEY (cp_func_num) REFERENCES tab_funcionario (func_num) ON DELETE CASCADE,
FOREIGN KEY (cp_prod_cod) REFERENCES tab_produto (prod_cod)
);
Se eu tirar um dos 'ON DELETE CASCADE', não dá erro. Alguém pode ajudar?