Procura

Banco de dadosSql


EXERCÍCIOS - Exercício 456

  • (CESGRANRIO 2013)

Considere as tabelas a seguir para responder às questões. Essas tabelas pertencem ao esquema de um banco de dados de uma locadora de veículos.
CREATE TABLE VEICULO (
PLACA CHAR(7) NOT NULL,
MODELO VARCHAR2(50) NOT NULL,
COD_CAT CHAR(2) NOT NULL,
CONSTRAINT VEICULO_PK PRIMARY KEY (PLACA),
CONSTRAINT VEICULO_FK FOREIGN KEY (COD_CAT) REFERENCES
CATEGORIA (COD_CAT))

CREATE TABLE CATEGORIA (
COD_CAT CHAR(2) NOT NULL,
DESCR VARCHAR2(80) NOT NULL,
VAL_DIARIA NUMBER(7,2),
CONSTRAINT CATEGORIA_PK PRIMARY KEY (COD_CAT))

CREATE TABLE ALUGUEL (
PLACA CHAR(7) NOT NULL,
DATA_DEV NUMBER(6),
DATA_ALG NUMBER(6) NOT NULL,
CONSTRAINT ALUGUEL_PK PRIMARY KEY (PLACA, DATA_ALG),
CONSTRAINT ALUGUEL_FK FOREIGN KEY (PLACA) REFERENCES
VEICULO (PLACA))

Observações:
• A tabela VEICULO contém as informações sobre os veículos que a locadora dispõe para aluguel. Ela possui uma coluna chamada COD_CAT, que contém a categoria à qual um veículo pertence.
• A tabela CATEGORIA representa a tabela de preços da locadora. Ela registra o valor que será cobrado por um dia de aluguel de um veículo de uma determinada categoria.
• A tabela ALUGUEL é usada para registrar todas as operações de aluguel. A coluna DATA_ALG guarda a data na qual um veículo foi alugado, enquanto a coluna DATA_DEV guarda a data na qual o veículo foi devolvido. Ela é informada ao sistema quando o cliente devolve o veículo à locadora. Ambas as datas estão no formato AAMMDD. Dessa forma, a data 05/02/2011 será armazenada como 110205.
Qual comando SQL será executado com sucesso, independente do estado das tabelas que compõem a base de dados da locadora de veículos?



A) INSERT INTO CATEGORIA (DESCR,VAL_DIARIA,COD_CAT)
VALUES ('sedan compacto',90.00,'uc')


B) DELETE FROM CATEGORIA X WHERE
NOT EXISTS (SELECT COUNT(*)
FROM VEICULO V,ALUGUEL A
WHERE V.COD_CAT=X.COD_CAT AND V.PLACA=A.PLACA AND
A.DATA_DEV IS NOT NULL
GROUP BY V.COD_CAT)


C) INSERT INTO ALUGUEL VALUES ('LJJ2222',120618)


D) DELETE FROM VEICULO X WHERE
NOT EXISTS (SELECT COUNT(*)
FROM ALUGUEL A
WHERE X.PLACA=A.PLACA AND
A.DATA_DEV IS NOT NULL
GROUP BY A.PLACA)


E) UPDATE VEICULO X SET COD_CAT='xs' WHERE
EXISTS (SELECT COUNT(*)
FROM VEICULO V,ALUGUEL A
WHERE V.COD_CAT='xs' AND V.PLACA=A.PLACA AND
A.DATA_DEV IS NOT NULL
GROUP BY V.COD_CAT)



Próximo:
EXERCÍCIOS - Exercício 457

Vamos para o Anterior: Exercício 455

Tente Este: Exercício 451

Primeiro: Exercício 1

VOLTAR ao índice: Banco de dados






Cadastre-se e ganhe o primeiro capítulo do livro.
+
((ts_substr_ig=0.00ms))((ts_substr_id=5.99ms))((ts_substr_m2=0.00ms))((ts_substr_p2=1.19ms))((ts_substr_c=0.88ms))((ts_substr_im=0.77ms))
((total= 9ms))