Questões de Concurso sobre Transact SQL (T-SQL)

 
 
Disciplina
Assunto 1
Banca
Instituição
Cargo
Ano
Carreira
Área de formação
Escolaridade
Dificuldade
 
Comentários:
Professores
Alunos
Meus Comentários
Vídeo
 
Minhas questões:
Resolvidas
Não resolvidas
Certas
Erradas
 
Tipo de questão:
Certo e errado
Múltipla escolha
Incluir questões:
Anuladas
Desatualizadas
 
Questões:
Todas as questões
 
Filtro simplificado
 
Questões
Todas as questões
 
33 questões encontradas
Questões por página
20
Mais recentes
 

Um Auditor do TCE-SC está analisando uma base de dados de pagamentos governamentais para identificar possíveis duplicidades. Ele precisa criar uma consulta que retorne apenas os pagamentos cujo valor seja superior à média de pagamentos daquele mesmo órgão no mês correspondente.


Para realizar essa análise de forma otimizada, legível, utilizando o SQL Server (T-SQL), o recurso de linguagem, entre os apresentados a seguir, mais indicado para isolar a lógica da média por órgão antes da consulta principal, é


A

utilizar uma VIEW temporária indexada.


B

utilizar uma Common Table Expression.


C

aplicar um CROSS JOIN entre a tabela de pagamentos e a de órgãos.


D

criar um CURSOR para iterar sobre cada linha da tabela.


E

utilizar a função DATEDIFF dentro de um WHERE simples.

Em SQL, constitui-se que uma transact é uma única unidade de trabalho. Quando obtiver êxito, todas as modificações de dados feitas durante a transact estarão confirmadas e se tornarão parte permanente do banco de dados.


No ambiente SQL Server, o modo de operação transact que é aplicável apenas a MARS (Conjuntos de Resultados Ativos Múltiplos), é melhor classificado como:


A

Transact de confirmação automática


B

Transact explicita


C

Transact implícitas


D

Transact de escopo de lote


E

Transact de entrada

Relacione cada tipo de transação disponível no SQL Server às suas características correspondentes.


I) Transações explícitas

II) Transações implícitas

III) Transações de escopo de lote


a) Cada transação é iniciada com a instrução BEGIN TRANSACTION e finalizada somente com uma instrução COMMIT ou ROLLBACK.

b) Aplicável apenas a MARS. A transação que não é confirmada ou revertida quando um lote é concluído, será revertida automaticamente pelo SQL Server.

c) Uma transação nova é iniciada quando a transação anterior for concluída, mas cada transação é somente concluída com uma instrução COMMIT ou ROLLBACK.


A

I - a; II - b; III - c.


B

I - a; II - c; III - b.


C

I - c; II - b; III - a.


D

I - c; II - a; III - b.


E

I - b; II - a; III - c.

Durante o funcionamento de um banco de dados Microsoft SQL Server 2019, a seguinte sequência de eventos pode acontecer:


• Uma transação Ti adquire uma trava compartilhada (shared lock) na linha 1.

• Uma transação T2 adquire uma trava compartilhada na linha 2.

• A transação Ti tenta adquirir uma trava exclusiva (exclusive lock) na linha 2, ficando bloqueada até que a transação T2 libere a trava na linha 2.

• A transação T2 tenta adquirir uma trava exclusiva na linha 1, ficando bloqueada esperando que a transação Ti libere a trava na linha 1.


Sobre esse contexto, analise as assertivas a seguir:


I. O sistema é capaz de detectar essa situação automaticamente, e pode resolvê-la escolhendo uma das transações para terminar com um erro.

II. Situações semelhantes podem acontecer entre mais do que duas transações ao mesmo tempo.

III. Se todas as transações acessarem objetos na mesma ordem, situações semelhantes são menos prováveis de acontecer.


Quais estão corretas?


A

Apenas I.


B

Apenas II.


C

Apenas I e II.


D

Apenas II e III.


E

I, Il e lII.

Qual é a linguagem de programação fornecida pelo sistema gerenciador de banco de dados Microsoft SQL Server para armazenar valores em variáveis, aplicar a execução condicional de comandos e controlar fluxos de seus programas, bem como passar parâmetros para procedimentos armazenados?


A

M-SQL.


B

MS-SQL.


C

PG-SQL.


D

PL-SQL.


E

T-SQL.

Uma Analista Judiciária de um Tribunal Regional do Trabalho está desenvolvendo uma rotina em Transact-SQL (T-SQL) para gerar um relatório de auditoria. O sistema registra alterações em tabelas sensíveis, como “Processos”, “Partes” e “Audiências”. A tabela: log_alteracoes armazena os dados com as seguintes colunas:


id log (int): identificador da alteração;

tabela afetada (varchar): nome da tabela alterada;

usuario (varchar): usuário que realizou a alteração;

data_alteracao (datetime): data e hora da alteração.


O objetivo é retornar, para cada usuário, a última data em que ele alterou qualquer registro da tabela "Processos", mediante o uso correto da consulta


A

SELECT usuario, data_alteracao

FROM log_alteracoes

WHERE tabela_afetada = 'Processos'

GROUP BY usuario, data_alteracao

HAVING data_alteracao = MAX(data_alteraçao);


B

SELECT usuario, MAX(data_alteracao) AS ultima_alteracao

FROM log_alteracoes

WHERE tabela_afetada ='Processos'

GROUP BY usuario;


C

SELECT usuario, MAX(data_alteracao)

FROM log_alteracoes

WHERE tabela_afetada = 'Processos';


D

SELECT DISTINCT usuario, data_alteracao

FROM log_alteracoes

WHERE tabela_afetada = 'Processos'

ORDER BY data_alteracao DESC;


E

SELECT usuario, data_alteracao

FROM log_alteracoes

WHERE tabela_afetada = 'Processos'

AND data_alteração = MAX(data_alteracao)

GROUP BY usuario;

Embora a linguagem JavaScript não possua instruções SQL nativas, ela pode enviar comandos SQL a sistemas gerenciadores de banco de dados (SGBDs) por meio de drivers, APIs ou bibliotecas.


Tendo isso como base, avalie se as afirmativas a seguir são verdadeiras (V) ou falsas (F).


( ) A linguagem JavaScript de servidor Node.js pode executar comandos SQL enviando strings a bibliotecas como pg, mysql2 ou better-sqlite3.

( ) A especificação da linguagem JavaScript define palavras-chave SQL reservadas (como INSERT e DELETE) que o motor executa diretamente, sem bibliotecas externas.

( ) Drivers SQL modernos para a linguagem JavaScript não permitem iniciar e controlar transações (como COMMIT e ROLLBACK) diretamente no código.


As afirmativas são, respectivamente,


A

V – F – F.


B

V – V – F.


C

F – V – V.


D

V – V – V.


E

F – F – V.

Ano: 2024
Prova: Instituto Access - Instituto de Acesso à Educação, Capacitação Profissional e Desenvolvimento Humano - Prefeitura - PEB II - Informática - 2024

Em bancos de dados relacionais, a linguagem SQL (Structured Query Language) é fundamental para a manipulação e consulta de dados. Sobre o SQL e seus dialetos, marque V para as afirmativas verdadeiras e F para as falsas.


(__) O SQL é uma linguagem padrão para gerenciar bancos de dados relacionais, mas cada sistema gerenciador de banco de dados (SGBD) pode ter suas próprias variações e extensões da linguagem.

(__) PL/SQL é um dialeto do SQL desenvolvido pela Microsoft e utilizado exclusivamente no sistema gerenciador de banco de dados SQL Server.

(__) Comandos SQL como SELECT, INSERT, UPDATE e DELETE são utilizados para consultar, inserir, atualizar e remover dados em tabelas, respectivamente.


Assinale a alternativa cuja respectiva ordem de julgamento esteja correta:


A

V, V, V.


B

F, F, V.


C

V, F, V.


D

V, F, F.

A linguagem SQL, que é importante para o gerenciamento de dados em SGBD e se estende para a manipulação de dados espaciais em contextos de geoprocessamento,


I permite a criação de dados, possibilitando a estruturação de dados em DDL.

II admite o controle de transações de dados.

III é ideal para o suporte a dados em tempo real.


Assinale a opção correta.


A

Apenas o item I está certo.


B

Apenas o item III está certo.


C

Apenas os itens I e II estão certos.


D

Apenas os itens II e III estão certos.


E

Todos os itens estão certos.

O comando do Transact-SQL para criar um stored procedure, denominado Eight, passando o parâmetro Seven, para executar uma operação de seleção é:


A

CREATE PROC @Eight #Seven AS

SELECT ...;


B

CREATE PROC &Eight $Seven AS

SELECT ...;


C

CREATE PROC Seven.Eight AS

SELECT ...;


D

CREATE PROC #Seven OF Eight AS

SELECT ...;


E

CREATE PROC Eight @Seven AS

SELECT ...;

No SGBD Microsoft SQL Server, versão atualizada, um procedimento armazenado (stored procedure) é um conjunto de instruções em linguagem Transact-SQL. Para executar um procedimento armazenado usando Transact-SQL, pode-se utilizar o comando:


A

INVOKE


B

EXEC


C

IMPLEMENT


D

GO


E

RUN

A linguagem Transact SQL do sistema gerenciador de bancos de dados Microsoft SQL Server possui o comando BULK INSERT, cuja função é


A

codificar os dados de uma tabela especificada nesse comando.


B

confirmar as operações de inserção de dados realizadas em determinado período de tempo.


C

importar um arquivo com dados para uma tabela ou visão da base de dados.


D

restituir os registros excluídos de determinada tabela da base de dados.


E

eliminar os registros que contenham valores nulos nas tabelas do banco de dados.

O Transact-SQL (T-SQL), que é uma linguagem de controle de transação do SGBD PostgreSQL e do MySQL, constitui um conjunto de operações que podem processar dados de uma atualização pendente de confirmação.


C

Certo


E

Errado

A linguagem Transact-SQL, uma extensão ao padrão SQL-92, é a linguagem utilizada por desenvolvedores na construção de aplicações que manipulam dados mantidos no SGBD SQL Server. Sobre o uso de funções pertencentes à linguagem Transact-SQL, considere que a instrução a seguir foi executada no SQL Server 2018, evidenciando a tabela 1:


Tabela 1


Ano

Mês

Valor

2022

Janeiro

R$ 100.056,00

2022

Fevereiro

R$ 130.063,00

2022

Março

R$ 111.210,00

2022

Abril

R$ 98.958,00

2022

Maio

R$ 109.352,00

2022

Junho

R$ 115.443,00


A tabela 2 apresenta as mesmas informações da tabela 1; porém, transformadas do formato horizontal (linhas) para o formato vertical (Colunas).


Tabela 2


Ano

Janeiro

Fevereiro

Março

Abril

Maio

Junho

2022

R$ 100.056,00

R$ 130.063,00

R$ 111.210,00

R$ 98.958,00

R$ 109.352,00

R$ 115.443,00


Qual operador foi utilizado para transformar a tabela 1 em tabela 2 (linhas em colunas)?


A

PIVOT


B

APPLY


C

FETCH


D

GROUP BY

Assinale a alternativa que indica corretamente o comando Transact-SQL que interrompe o banco de dados MS SQL Server em um sistema operacional Linux imediatamente, sem aguardar a conclusão das transações e procedimentos atualmente em execução.


A

HALT;


B

HALT IMMEDIATE;


C

SHUTDOWN NOW;


D

SHUTDOWN WITH NOWAIT;


E

SHUTDOWN;

Em bancos de dados relacionais, um trigger é definido como um bloco de comandos Transact-SQL, que é automaticamente executado quando um comando SQL/DML específico for executado em uma tabela do banco de dados. Assinale a alternativa em que se apresente corretamente comando que deve ser um dos indicados.


A

SELECT, DROP ou INSERT


B

DELETE, UPDATE ou SELECT


C

INSERT, DELETE ou UPDATE


D

UPDATE, SELECT ou DROP

Considerando que um profissional de tecnologia da informação necessita definir um argumento em T-SQL que se comporta como uma variável local para a entrada de parâmetros para uma rotina, assinale a alternativa que apresenta corretamente a forma de declaração que esse profissional deve fazer para esse argumento.


A

DECLARE @id_emp AS INT = 10;


B

INT @id_emp = 10 AS ARGUMENT;


C

@id_emp INT = 10;


D

DEFINE @id_emp AS INT;


E

FROM EMP CREATE @id_emp AS ARGUMENT;

Um dos desafios em se trabalhar com grandes volumes de dados de diferentes regiões do mundo é realizar o tratamento em dados do tipo data e hora. Com base nessa informação, os profissionais de tecnologia da informação que precisam trabalhar com a função SYSDATETIMEOFFSET da T-SQL sabem que o papel dessa função é


A

trazer data e hora atual do sistema.


B

trazer data e hora compatíveis com a SQLANSI.


C

trazer data e hora com a UTC, ou seja, Universal Time Coordinated.


D

trazer data e hora atual com o fuso horário.


E

trazer data e hora atual aplicando um deslocamento (offset) com a quantidade de horas informada pelo usuário.

Um profissional de tecnologia da informação necessita realizar uma criação de uma trigger em T-SQL na tabela produtos. Nesse caso, o código correto de criação de uma trigger em T-SQL na tabela produtos que deve ser utilizado pelo profissional em questão é


A

CREATE trg_01 TRIGGER FOR produtos

AFTER INSERT AS

SELECT ‘Produto Adicionado’;


B

CREATE TRIGGER trg_01 ON produtos

AFTER INSERT AS

SELECT ‘Produto Adicionado’;


C

ENABLE TRIGGER trg_01 ON produtos

AFTER INSERT AS

SELECT ‘Produto Adicionado’;


D

TRIGGER trg_01 ENABLE ON produtos

AFTER INSERT AS

SELECT ‘Produto Adicionado’;


E

CREATE trg_01 FOR produtos AFTER

INSERT AS TRIGGER USING

SELECT ‘Produto Adicionado’;

Um profissional de tecnologia da informação necessita restringir o tempo em que a sessão aguarda um bloqueio em algumas transações T-SQL. Qual alternativa apresenta o comando correto, em T-SQL, para que esse profissional restrinja o tempo de uma sessão ativa em 10 segundos?


A

DECLARE TIMEOUT = 10s;


B

SET TIMEOUT = 10s;


C

SET LOCK_TIMEOUT = 10000;


D

LOCK_TIMEOUT = 10000;


E

SET LOCK_TIME INT = 10000;

 
 
Gerar simulado