As 50 principais perguntas e respostas da entrevista do SQL Server (2026)

Aqui estรฃo as perguntas e respostas da entrevista do SQL Server para candidatos mais novos e experientes para conseguir o emprego dos sonhos.

Perguntas e respostas da entrevista do SQL Server para calouros


1. Quais sรฃo os dois modos de autenticaรงรฃo no SQL Server?

Existem dois modos de autenticaรงรฃo โ€“

  • Windows Moda
  • Modo misto

Os modos podem ser alterados selecionando o menu de ferramentas das propriedades de configuraรงรฃo do SQL Server e escolhendo a pรกgina de seguranรงa.

๐Ÿ‘‰ Download gratuito de PDF: Perguntas e respostas da entrevista do SQL Server


2. O que รฉ SQL Profiler?

SQL Profiler รฉ uma ferramenta que permite ao administrador do sistema monitorar eventos no servidor SQL. Isso รฉ usado principalmente para capturar e salvar dados sobre cada evento de um arquivo ou tabela para anรกlise.


3. O que รฉ procedimento armazenado recursivo?

O SQL Server oferece suporte a procedimentos armazenados recursivos que chamam sozinhos. O procedimento armazenado recursivo pode ser definido como um mรฉtodo de resoluรงรฃo de problemas em que a soluรงรฃo รฉ alcanรงada repetidamente. Pode aninhar atรฉ 32 nรญveis.

CREATE PROCEDURE [dbo].[Fact]
(
@Number Integer,
@RetVal Integer OUTPUT
)
AS
DECLARE @In Integer
DECLARE @Out Integer
IF @Number != 1
BEGIN
SELECT @In = @Number โ€“ 1
EXEC Fact @In, @Out OUTPUT - Same stored procedure has been called again(Recursively)
SELECT @RetVal = @Number * @Out
END
ELSE
BEGIN
SELECT @RetVal = 1
END
RETURN
GO

4. Quais sรฃo as diferenรงas entre tabelas temporรกrias locais e globais?

  • As tabelas temporรกrias locais ficam visรญveis quando hรก uma conexรฃo e sรฃo excluรญdas quando a conexรฃo รฉ encerrada.
CREATE TABLE #<tablename>
  • As tabelas temporรกrias globais sรฃo visรญveis para todos os usuรกrios e sรฃo excluรญdas quando a conexรฃo que as criou รฉ encerrada.
CREATE TABLE ##<tablename>

5. O que รฉ restriรงรฃo CHECK?

Uma restriรงรฃo CHECK pode ser aplicada a uma coluna de uma tabela para limitar os valores que podem ser colocados em uma coluna. A restriรงรฃo de verificaรงรฃo รฉ para impor a integridade.


6. Os servidores SQL podem ser vinculados a outros servidores?

Servidor SQL pode ser conectado a qualquer banco de dados que possua provedor OLE-DB para fornecer um link. Exemplo: Oracle possui provedor OLE-DB que possui link para conectar-se ao grupo de servidores SQL.


7. O que รฉ subconsulta e suas propriedades?

Uma subconsulta รฉ uma consulta que pode ser aninhada dentro de uma consulta principal, como instruรงรตes Select, Update, Insert ou Delete. Isso pode ser usado quando a expressรฃo รฉ permitida. Propriedades da subconsulta podem ser definidas como

  • Uma subconsulta nรฃo deve ter clรกusula order by
  • Uma subconsulta deve ser colocada no lado direito do operador de comparaรงรฃo da consulta principal
  • Uma subconsulta deve ser colocada entre parรชnteses porque precisa ser executada primeiro, antes da consulta principal
  • Mais de uma subconsulta pode ser incluรญda

8. Quais sรฃo os tipos de subconsulta?

Existem trรชs tipos de subconsulta โ€“

  • Subconsulta de linha รบnica que retorna apenas uma linha
  • Subconsulta de mรบltiplas linhas que retorna mรบltiplas linhas
  • Subconsulta de mรบltiplas colunas que retorna mรบltiplas colunas para a consulta principal. Com o resultado da subconsulta, a consulta principal serรก executada.

9. O que รฉ agente SQL Server?

O agente SQL Server desempenha um papel vital nas tarefas diรกrias do administrador do SQL Server (DBA). O objetivo do agente servidor รฉ implementar as tarefas facilmente com o mecanismo do agendador que permite que nossos trabalhos sejam executados em data e hora agendadas.


10. O que sรฃo tarefas agendadas no SQL Server?

Tarefas ou trabalhos agendados sรฃo usados โ€‹โ€‹para automatizar processos que podem ser executados em um horรกrio agendado em intervalos regulares. Este agendamento de tarefas ajuda a reduzir a intervenรงรฃo humana durante a noite e a alimentaรงรฃo pode ser feita em um determinado horรกrio. O usuรกrio tambรฉm pode ordenar as tarefas nas quais deve ser gerado.


11. O que รฉ COALESCE no SQL Server?

COALESCE รฉ usado para retornar a primeira expressรฃo nรฃo nula dentro dos argumentos. Esta funรงรฃo รฉ usada para retornar um valor nรฃo nulo de mais de uma coluna nos argumentos.

Exemplo -

Select COALESCE(empno, empname, salary) from employee;

12. Como as exceรงรตes podem ser tratadas na programaรงรฃo do SQL Server?

As exceรงรตes sรฃo tratadas usando construรงรตes TRYโ€”-CATCH e sรฃo tratadas escrevendo scripts dentro do bloco TRY e tratamento de erros no bloco CATCH.


13. Qual รฉ a finalidade da funรงรฃo FLOOR?

A funรงรฃo FLOOR รฉ usada para arredondar um valor nรฃo inteiro para o menor nรบmero inteiro anterior. Exemplo รฉ dado

FLOOR(6.7)

Retorna 6.


14. Podemos verificar os bloqueios no banco de dados? Se sim, como podemos fazer essa verificaรงรฃo de bloqueio?

Sim, podemos verificar bloqueios no banco de dados. Isso pode ser alcanรงado usando um procedimento armazenado integrado chamado sp_lock.


15. Qual รฉ a utilidade da funรงรฃo SIGN?

A funรงรฃo SIGN รฉ usada para determinar se o nรบmero especificado รฉ Positivo, Negativo e Zero. Isso retornarรก +1,-1 ou 0.

Exemplo -

SIGN(-35) returns -1

16. O que รฉ um gatilho?

Os gatilhos sรฃo usados โ€‹โ€‹para executar um lote de cรณdigo SQL quando comandos de inserรงรฃo, atualizaรงรฃo ou exclusรฃo sรฃo executados em uma tabela. Os gatilhos sรฃo acionados ou executados automaticamente quando os dados sรฃo modificados. Pode ser executado automaticamente nas operaรงรตes de inserรงรฃo, exclusรฃo e atualizaรงรฃo.


17. Quais sรฃo os tipos de gatilhos?

Existem quatro tipos de gatilhos e sรฃo eles:

  • inserรงรฃo
  • Apagar
  • Atualizar
  • Em vez de

18. O que รฉ uma coluna IDENTITY em instruรงรตes de inserรงรฃo?

A coluna IDENTITY รฉ usada nas colunas da tabela para tornar essa coluna um nรบmero incremental automรกtico ou uma chave substituta.


19. O que รฉ cรณpia em massa em SQL?

Bulkcopy รฉ uma ferramenta usada para copiar grande quantidade de dados de tabelas. Esta ferramenta รฉ usada para carregar grande quantidade de dados no SQL Server.


20. Qual serรก a consulta utilizada para obter a lista de triggers em um banco de dados?

Consulta para obter a lista de gatilhos no banco de dados

Select * from sys.objects where type='tr'

21. Qual รฉ a diferenรงa entre UNION e UNION ALL?

  • UNION: Para selecionar informaรงรตes relacionadas de duas tabelas, o comando UNION รฉ usado. ร‰ semelhante ao comando JOIN.
  • UNION All: O comando UNION ALL รฉ igual ao comando UNION, exceto que UNION ALL seleciona todos os valores. Ele nรฃo removerรก linhas duplicadas; em vez disso, recuperarรก todas as linhas de todas as tabelas.

22. Como sรฃo representadas as tabelas temporรกrias globais e seu escopo?

As tabelas temporรกrias globais sรฃo representadas por ## antes do nome da tabela. O escopo estarรก fora da sessรฃo, enquanto as tabelas temporรกrias locais estarรฃo dentro da sessรฃo. O ID da sessรฃo pode ser encontrado usando @@SPID.


Perguntas e respostas da entrevista do SQL Server para experientes

23. Quais as diferenรงas entre Stored Procedure e SQL dinรขmico?

Procedimento armazenado รฉ um conjunto de instruรงรตes armazenadas em um formato compilado. SQL dinรขmico รฉ um conjunto de instruรงรตes construรญdas dinamicamente em tempo de execuรงรฃo e nรฃo serรก armazenado em um banco de dados e simplesmente serรก executado durante o tempo de execuรงรฃo.


24. O que รฉ agrupamento?

O agrupamento รฉ definido para especificar a ordem de classificaรงรฃo em uma tabela. Existem trรชs tipos de ordem de classificaรงรฃo โ€“

  1. Maiรบsculas e minรบsculas
  2. Nรฃo diferencia maiรบsculas de minรบsculas
  3. Binรกrio

25. Como podemos contar o nรบmero de registros em uma tabela?

A seguir estรฃo as consultas que podem ser usadas para obter a contagem de registros em uma tabela โ€“

Select * from <tablename> Select count(*) from <tablename> Select rows from sysindexes where id=OBJECT_ID(tablename) and indid<2

26. Qual รฉ o comando usado para obter a versรฃo do SQL Server?

Select SERVERPROPERTY('productversion')

รฉ usado para obter a versรฃo do SQL Server.


27. O que รฉ o comando UPDATE_STATISTICS?

O comando UPDATE_STATISTICS รฉ usado para atualizar os รญndices nas tabelas quando hรก uma grande quantidade de exclusรตes ou modificaรงรตes ou cรณpias em massa ocorridas nos รญndices.


28. Qual รฉ a utilidade da instruรงรฃo SET NOCOUNT ON/OFF?

Por padrรฃo, NOCOUNT estรก definido como OFF e retorna o nรบmero de registros afetados sempre que o comando รฉ executado. Se o usuรกrio nรฃo quiser exibir o nรบmero de registros afetados, ele poderรก ser explicitamente definido como ON- (SET NOCOUNT ON).


29. Qual tabela do SQL Server รฉ usada para armazenar os scripts de procedimento armazenado?

Sys.SQL_Modules รฉ uma tabela do SQL Server usada para armazenar o script do procedimento armazenado. O nome do procedimento armazenado รฉ salvo na tabela chamada Sys.Procedures.


30. O que sรฃo tabelas mรกgicas no SQL Server?

Durante operaรงรตes DML como Insert, Delete e Update, o SQL Server cria tabelas mรกgicas para armazenar os valores durante as operaรงรตes DML. Essas tabelas mรกgicas sรฃo usadas dentro dos gatilhos para transaรงรฃo de dados.


31. Qual a diferenรงa entre SUBSTR e CHARINDEX no SQL Server?

A funรงรฃo SUBSTR รฉ usada para retornar uma parte especรญfica da string em uma determinada string. Mas, a funรงรฃo CHARINDEX fornece a posiรงรฃo do caractere em uma determinada string especificada.

SUBSTRING('Smiley',1,3)

Dรก resultado como Smi

CHARINDEX('i', 'Smiley',1)

Dรก 3 como resultado como eu apareรงo em 3rd posiรงรฃo da corda


32. Como criar um login?

Vocรช pode usar o seguinte comando para criar um login

CREATE LOGIN MyLogin WITH PASSWORD = '123';

33. O que รฉ o operador ISNULL()?

A funรงรฃo ISNULL รฉ usada para verificar se o valor fornecido รฉ NULL ou nรฃo NULL no sql server. Esta funรงรฃo tambรฉm permite substituir um valor por NULL.


34. Qual รฉ a utilidade da clรกusula FOR?

A clรกusula FOR รฉ usada principalmente para XML e opรงรตes do navegador. Esta clรกusula รฉ usada principalmente para exibir os resultados da consulta em formato XML ou no navegador.


35. Qual serรก o nรบmero mรกximo de รญndices por tabela?

Para SQL Server 2008, o รndice 100 pode ser usado como nรบmero mรกximo por tabela. 1 Clusterรndice ed e 999 รญndices nรฃo agrupados por tabela podem ser usados โ€‹โ€‹no SQL Server.

O รญndice 1000 pode ser usado como nรบmero mรกximo por tabela. 1 Clusterรndice ed e 999 รญndices nรฃo agrupados por tabela podem ser usados โ€‹โ€‹no SQL Server.

1 Clusterรndice ed e 999 รญndices nรฃo agrupados por tabela podem ser usados โ€‹โ€‹no SQL Server.


36. Qual รฉ a diferenรงa entre COMMIT e ROLLBACK?

Cada instruรงรฃo entre BEGIN e COMMIT torna-se persistente no banco de dados quando o COMMIT รฉ executado. Cada instruรงรฃo entre BEGIN e ROOLBACK รฉ revertida para o estado em que o ROLLBACK foi executado.


37. Qual รฉ a diferenรงa entre os tipos varchar e nvarchar?

Varchar e nvarchar sรฃo iguais, mas a รบnica diferenรงa รฉ que nvarhcar pode ser usado para armazenar caracteres Unicode para vรกrios idiomas e tambรฉm ocupa mais espaรงo quando comparado com varchar.


38. Qual รฉ a utilidade de @@SPID?

Um @@SPID retorna o ID da sessรฃo do processo do usuรกrio atual.


39. Qual รฉ o comando usado para recompilar o procedimento armazenado em tempo de execuรงรฃo?

O procedimento armazenado pode ser executado com a ajuda da palavra-chave chamada RECOMPILE.

Exemplo

Exe <SPName>  WITH RECOMPILE

Ou podemos incluir WITHRECOMPILE no prรณprio procedimento armazenado.


40. Como deletar linhas duplicadas no SQL Server?

Linhas duplicadas podem ser excluรญdas usando o recurso CTE e ROW NUMER do SQL Server.


41. Onde os nomes de usuรกrio e senhas do SQL Server sรฃo armazenados no SQL Server?

Nomes de usuรกrio e senhas sรฃo armazenados em sys.server_principals e sys.sql_logins. Mas as senhas nรฃo sรฃo armazenadas em texto normal.


42. Qual รฉ a diferenรงa entre GETDATE e SYSDATETIME?

Ambos sรฃo iguais, mas GETDATE pode fornecer tempo de atรฉ milissegundos e SYSDATETIME pode fornecer precisรฃo de atรฉ nanossegundos. SYSDATE TIME รฉ mais preciso que GETDATE.


43. Como os dados podem ser copiados de uma tabela para outra?

INSERT INTO SELECT

Este comando รฉ usado para inserir dados em uma tabela jรก criada.

SELECT INTO

Este comando รฉ usado para criar uma nova tabela e sua estrutura e dados podem ser copiados da tabela existente.


44. O que รฉ TABLESAMPLE?

TABLESAMPLE รฉ usado para extract amostra aleatoriamente as linhas que sรฃo todas necessรกrias para a aplicaรงรฃo. As linhas da amostra sรฃo selecionadas com base na porcentagem de linhas.


45. Qual comando รฉ usado para mensagens de erro definidas pelo usuรกrio?

RAISEERROR รฉ o comando usado para gerar e iniciar o processamento de erros para uma determinada sessรฃo. Essas mensagens definidas pelo usuรกrio sรฃo armazenadas na tabela sys.messages.


46. โ€‹โ€‹O que significa tipo de dados XML?

O tipo de dados XML รฉ usado para armazenar documentos XML no banco de dados SQL Server. Colunas e variรกveis โ€‹โ€‹sรฃo criadas e armazenam instรขncias XML no banco de dados.


47. O que รฉ CDC?

CDC รฉ abreviado como Change Data Capture, que รฉ usado para capturar os dados que foram alterados recentemente. Este recurso estรก presente no SQL Server 2008.


48. O que รฉ injeรงรฃo de SQL?

A injeรงรฃo de SQL รฉ um ataque de usuรกrios mal-intencionados no qual cรณdigo malicioso pode ser inserido em strings que podem ser passadas para uma instรขncia do servidor SQL para anรกlise e execuรงรฃo. Todas as instruรงรตes devem ser verificadas quanto a vulnerabilidades, pois executam todas as consultas sintaticamente vรกlidas que recebem.

Atรฉ mesmo os parรขmetros podem ser manipulados por invasores qualificados e experientes.


49. Quais sรฃo os mรฉtodos usados โ€‹โ€‹para proteรงรฃo contra ataques de injeรงรฃo de SQL?

A seguir estรฃo os mรฉtodos usados โ€‹โ€‹para proteรงรฃo contra ataques de injeรงรฃo de SQL:

  • Use parรขmetros para procedimentos armazenados
  • Filtrando parรขmetros de entrada
  • Use a coleรงรฃo de parรขmetros com SQL dinรขmico
  • Na clรกusula semelhante, os caracteres de escape do usuรกrio

50. O que รฉ รญndice filtrado?

O รndice Filtrado รฉ usado para filtrar alguma parte das linhas em uma tabela para melhorar o desempenho da consulta, a manutenรงรฃo do รญndice e reduzir os custos de armazenamento do รญndice. Quando o รญndice รฉ criado com a clรกusula WHERE, ele รฉ denominado รndice Filtrado.

Essas perguntas da entrevista tambรฉm ajudarรฃo em sua viva (oral)

Resuma esta postagem com: