Questões de Concurso
Sobre sql em banco de dados
Foram encontradas 4.619 questões

Tendo como base a tabela Empregados acima, assinale a opção correta acerca de comandos SQL.

Sabendo-se que é vencedor de um torneio o jogador com maior número de vitórias em tal torneio, qual comando SQL apresenta como resultado os ID e nomes dos jogadores que venceram torneios realizados no primeiro semestre de 2009?

Não existem restrições de integridade na tabela, mas sabe-se que o valor da coluna CODIGO não se repete em diferentes linhas. Sabe-se, também, que existem cerca de 20 mil valores distintos para CODIGO_TAB2, sendo que as quantidades de ocorrências de cada um de tais valores na tabela são aproximadamente iguais. De forma análoga, existem 5 valores distintos para a coluna SITUACAO, e as quantidades de ocorrências de cada um desses valores na tabela também são aproximadamente iguais.
Visando a atualizar os valores da coluna SITUACAO, um usuário irá executar repetidas vezes comando similar ao apresentado a seguir. Para cada execução do comando, o usuário substitui os valores das variáveis @VALOR_SITUACAO e @CODIGO por valores adequados. No entanto, a execução de tal comando de atualização está tendo desempenho insatisfatório.

Nesse contexto, qual a ação que pode gerar maior ganho de desempenho na execução do comando?
No SQL, o mesmo nome pode ser aplicado a mais de um atributo, desde que os atributos estejam em relações diferentes. Por isso, no caso de uma consulta das relações EMPREGADO e DEPARTAMENTO utilizando-se o atributo NUD, seria necessário o uso de qualificadores e de alias para evitar ambiguidade.
Considere o seguinte trecho de código SQL.
CREATE VIEW TRABALHA_EM1 AS SELECT NOME, SOBRENOME, NOMEP, HORAS FROM EMPREGADO, PROJETO, TRABALHA_EM WHERE NSS=NSSE AND NUMP=NUMEROP;
Utilizando-se as tabelas da base por meio do uso de duas junções, pode-se obter o mesmo resultado do código acima, conforme a seguir.
SELECT NOME, SOBRENOME FROM TRABALHA_EM1 WHERE NOMEP=’ProjetoX’;
Triggers são procedimentos disparados implicitamente sempre que uma tabela ou visão é modificada ou quando ocorrem algumas ações do usuário ou ações do sistema de banco de dados. O padrão SQL-92 dispõe da implementação de triggers conforme a sintaxe apresentada no trecho de código a seguir.
CREATE TRIGGER TOTALSAL1 AFTER INSERT ON EMPREGADO FOR EACH ROW WHEN (NEW.NUD IS NOT NULL) UPDATE DEPARTAMENTO SET TOTAL_SAL=TOTAL_SAL + NEW.SALARIO WHERE NUD=NEW.NUD;
No padrão SQL-92, o uso de uma condição de junção não é obrigatório para junções externas e é opcional para junções internas. Nesse último caso, se a condição de junção for omitida, o resultado será um produto cartesiano. Sintaticamente, a condição de junção natural aparece antes do tipo de junção.
No uso dos operadores padrão SQL-92 union, intersection e except, as relações participantes podem ter conjuntos de atributos diferentes.
O padrão SQL-92 define os conceitos de sessão SQL e ambiente SQL. Sessões SQL provêem os comandos SQL normais, mas não oferecem os comandos commit e rollback.
O comando create table e a declaração select são utilizados, respectivamente, para a definição de tabelas e consultas aos dados. O comando create table cria uma tabela no banco de dados e a declaração select é usada para obter informações contidas em uma tabela.
Com relação a SQL, julgue o item que se segue.
Na versão Oracle® 10g Release 2 (10.2), triggers são
procedimentos escritos em PL/SQL, Java ou C que são
disparados implicitamente sempre que uma tabela ou visão
é modificada ou quando ocorrem algumas ações do usuário
ou ações do sistema de banco de dados. Assim como
triggers, visões (views) podem ser consultadas, alteradas, ter
dados inseridos ou deletados, com certas restrições. Todas as
operações executadas em uma view afetam as tabelas nas
quais a view se baseia.
Com relação a SQL, julgue o item que se segue.
Na versão Oracle® 10g Release 2 (10.2), o uso da diretiva
de compilação Autonomous_Transaction permite que as
operações SQL, em uma sub-rotina, delimitadas pela
declaração da diretiva possam ser confirmadas ou revertidas,
sem confirmar ou reverter os dados da transação principal.