Vous êtes sur la page 1sur 5

1- Qual das afirmaes a seguir falsa ?

? R:Caso a tabela que est sendo criada pelo comando CREATE TABLE AS SELECT j exista, ela ser removida e recriada 2- Um usurio executou os seguintes comandos em sequncia: CREATE TABLE T4 (n1 NUMBER NOT NULL, x2 VARCHAR2(20), d3 DATE); INSERT INTO T4 VALUES (12,joao,SYSDATE); O primeiro comando executou com sucesso, mas o segundo apresentou a mensagem de erro: INSERT INTO T4 VALUES (12,joao,SYSDATE); * ORA-00984: column not allowed here A causa do erro foi: R:C. Os valores de string precisam estar contidos entre aspas simples. 3- Observe a query apresentada a seguir: SELECT empno,ename,sal FROM emp WHERE sal = (SELECT sal FROM emp WHERE empno=7788); Podemos afirmar que: R:B. Podemos utilizar o sinal de igual com segurana pois a coluna empno a PK da t abela emp. 4- Observe a query apresentada a seguir: SELECT empno,ename,job,sal,deptno FROM emp WHERE job = 'CLERK' MINUS SELECT empno,ename,job,sal,deptno FROM emp WHERE deptno = 30; Podemos afirmar que: R:C. O resultado exibir as linhas dos funcionrios que exercem a funo CLERK, exceto a queles que trabalham no departamento 30. 5- Qual das afirmaes abaixo incorreta ? R: B. Todas as afirmaes anteriores so falsas. 6- Um usurio executou os seguintes comandos em sequncia: CREATE TABLE T2 (n1 NUMBER(3),n2 NUMBER(3),n3 NUMBER(3)); INSERT INTO T2 VALUES (102,1001,100); O primeiro comando executou com sucesso, mas o segundo apresentou a mensagem de erro: ORA-01438: value larger than specified precision allowed for this column A causa do erro foi: R: B. O valor a ser inserido em uma coluna numrica no pode exceder o tamanho mximo especificado para a coluna.

7- Observe o formato geral de um comando SELECT com sub-query e escolha a afirmao correta. SELECT <lista-de-colunas> FROM <nome-de-tabela> WHERE <expresso> <operador> (SELECT <lista-de-colunas> FROM <nome-de-tabela>); B. A sub-query o comando contido entre parnteses.

R:

8- Um usurio executou os seguintes comandos em sequncia: CREATE TABLE T3 (n1 NUMBER(5),n2 NUMBER(5) NOT NULL,n3 NUMBER(5) NOT NUL L); INSERT INTO T3 (n2,n1) VALUES (5000,3000); O primeiro comando executou com sucesso, mas o segundo apresentou a mensagem de erro: ORA-01400: cannot insert NULL into ("SCOTT"."T3"."N3") A causa do erro foi: R:C. Existe uma coluna na tabela que foi definida como obrigatria,e para a qual no foi fornecido um valor no insert. 9 - Ao submeter a query apresentada a seguir, o usurio recebeu a seguinte mensage m de erro: ORA-01789: query block has incorrect number of result columns SELECT department_id,department_name FROM departments WHERE manager_id IS NOT NULL INTERSECT SELECT department_id,department_name,manager_id FROM departments WHERE location_id = 1700; A causa do erro : R:Os comandos select envolvidos em operaes de conjunto precisam ter a lista de col unas compatveis (mesmo nmero de colunas e datatypes semelhantes). 10- As restries de integridade so um mecanismo criados nos bancos de dados relacion ais que visam a proteo da integridade dos dados. Com relao s restries de integridade, escolha a afirmativa correta: R:D. A PRIMARY KEY garante um identificador nico para as linhas de uma tabela. 11 - Ao submeter para execuo a query apresentada a seguir, o usurio recebeu a mensa gem de erro ORA-01427: single-row subquery returns more than one row SELECT deptno,ename FROM emp WHERE deptno = (SELECT deptno FROM dept WHERE loc IN ('CHICAGO','BOSTON')); Qual afirmativa correta para entender este cenrio ?

R:D. A substituio do sinal de igual pelo operador IN produzir o resultado correto. 12- No comando SELECT apresentado a seguir a inteno do programador : SELECT ename,sal FROM emp WHERE sal > (SELECT AVG(sal) FROM emp); R:C. Exibir nome e salrio dos funcionrios cujo salrio for maior que a mdia salarial da empresa. 13- Assinale a afirmativa incorreta: O nome de uma tabela precisa seguir as seguintes regras: R:A. Os caracteres permitidos so letras maisculas ou minsculas,dgitos e os caractere s especiais *,%,&,#,$ e _. 14- Quando o usurio tentou executar a query apresentada a seguir, recebeu o erro: ORA-00933: SQL command not properly ended SELECT ename FROM emp WHERE deptno = 20 ORDER BY ename UNION SELECT ename FROM emp WHERE job = 'CLERK'; Podemos afirmar que a causa do erro : R? Nas operaes de conjunto apenas o ltimo select pode utilizar a clusula ORDER BY,qu e afetar todas as linhas do conjunto resultado.Na query apresentada, a clusula est localizada no primeiro s elect. 15 - Um usurio executou os seguintes comandos em sequncia: CREATE TABLE t1 (n1 NUMBER,n2 NUMBER,n3 NUMBER); INSERT INTO t1 VALUES (10,20); O primeiro comando executou com sucesso, mas o segundo apresentou a mensagem de erro: ORA-00947: not enough values A causa do erro foi: R? Neste formato de insert em que os nomes das colunas no so listados, a quantidad e de valores precisa ser igual ao nmero de colunas da tabela. 16 - Com relao operao de conjunto UNION podemos afirmar que; R? Exibe as linhas resultantes dos 2 selects, removendo-se as duplicidades. 17- Um usurio recebeu a tarefa de corrigir os salarios dos funcionrios do departam ento 30 em 20%. Para realizar esta tarefa, executou o comando apresentado a seguir:

UPDATE emp SET sal = sal * 1.2; Aps a execuo do comando, o Oracle retornou a mensagem: 14 rows updated. Esta mensagem chamou sua ateno, pois ele sabia que o departamento 30 possui ap enas 6 empregados. Escolha a alternativa correta: R?D. Como o comando UPDATE no tinha clusula WHERE para restringir o seu escopo, to das as linhas da tabela foram atualizadas, no apenas o departamento 30. 18 Um usurio executou os seguintes comandos em sequncia: SCOTT>CREATE TABLE emp2 AS SELECT * FROM emp; Table created. SCOTT>SELECT COUNT(*) FROM emp2; COUNT(*) ---------14 SCOTT>TRUNCATE TABLE emp2; Table truncated. SCOTT>SELECT COUNT(*) FROM emp2; COUNT(*) ---------0 SCOTT>ROLLBACK; Rollback complete. SCOTT>SELECT COUNT(*) FROM emp2; COUNT(*) ---------0 A expectativa do usurio era com o comando ROLLBACK recuperar as linhas qu e existiam na tabela e foram removidas pelo comando TRUNCATE. Por que razo isto no ocorreu ?: R?A. O comando TRUNCATE TABLE do tipo DDL e no permite rollback. 19 Na query apresentada a seguir(vide tambm o resultado da query), embora alguns emp regados satisfaam a ambas as condies, no ocorreram linhas duplicadas. SELECT ename FROM emp WHERE deptno = 20 UNION SELECT ename FROM emp WHERE job = 'CLERK'; ENAME ---------ADAMS FORD JAMES

JONES MILLER SCOTT SMITH 7 rows selected. Podemos afirmar que no ocorreram duplicidades porque: R?B. A operao UNION remove as linhas duplicadas no resultado da query. 20 - Com relao ao mecanismo de execuo de uma sub-query, podemos afirmar que: R?A sub-query executa uma nica vez, e sempre antes da query principal.

Vous aimerez peut-être aussi