As 27 principais perguntas e respostas da entrevista sobre MySQL para iniciantes e experientes [2022]

Publicados: 2021-01-07

Tem uma entrevista de engenharia de dados ou ciência de dados chegando? Precisa praticar algumas das perguntas mais frequentes da entrevista sobre o MySQL ? O artigo compila a lista das perguntas da entrevista sobre MySQL que você deve saber.

Aprenda a criar aplicativos como Swiggy, Quora, IMDB e muito mais

Perguntas e respostas comuns da entrevista sobre MySQL

1. O que é MySQL?

O MySQL é um dos DBMS (sistema de gerenciamento de banco de dados) de código aberto mais popular. MySQL é fácil de usar, confiável e rápido. Um sistema de gerenciamento de banco de dados que funciona em sistemas embarcados, bem como em sistemas cliente-servidor.

2. Por que o MySQL é tão popular?

Em primeiro lugar, o MySQL é de código aberto. Em segundo lugar, é amplamente adotado, portanto, muito código já está disponível. Mesmo sistemas desenvolvidos inteiros estão lá que podem ser consultados para os próximos projetos. MySQL tem bancos de dados relacionais; portanto, faz com que tenha armazenamento metódico, em vez de um grande despejo de bagunça desorganizada. E finalmente, como dito anteriormente, o MySQL é rápido e robusto.

3. Quais são as tabelas no MySQL? Explique os tipos.

Esta é uma pergunta obrigatória da entrevista sobre o MySQL . Vamos ver a resposta-

O MySQL armazena tudo em tabelas lógicas. As tabelas podem ser consideradas como a estrutura de armazenamento central do MySQL. E, portanto, as tabelas também são conhecidas como mecanismos de armazenamento. Aqui estão os mecanismos de armazenamento fornecidos pelo MySQL:

· MyISAM – MyISAM é o mecanismo de armazenamento padrão para MySQL. Ele estende o antigo mecanismo de armazenamento ISAM. MyISAM oferece grande armazenamento, até 256TB! As tabelas também podem ser compactadas para obter armazenamento extra. As tabelas MyISAM não são seguras para transações.

· MERGE – Uma tabela MERGE é uma tabela virtual que consolida diferentes tabelas MyISAM que possuem uma estrutura comparável a uma tabela. As tabelas MERGE usam os índices das tabelas base, pois não possuem índices próprios.

· ARCHIVE – Como o nome sugere, Archive ajuda no arquivamento das tabelas, compactando-as, reduzindo o espaço de armazenamento. Assim, você pode armazenar muitos registros com o Arquivo. Ele usa o procedimento de compactação-descompactação ao gravar e ler os registros da tabela. Isso é feito usando a biblioteca Zlib.

· CSV – É mais como um formato de armazenamento. O mecanismo CSV armazena os valores no formato de valores separados por vírgula (CSV). Esse mecanismo facilita a migração das tabelas para um pipeline não SQL.

· InnoDB – InnoDB é o melhor ao escolher um mecanismo para impulsionar o desempenho. O InnoDB é um mecanismo seguro para transações. Portanto, é compatível com ACID e pode restaurar com eficiência seu banco de dados para o estado mais estável em caso de falha.

· Memória – As tabelas de memória eram anteriormente conhecidas como HEAP. Com tabelas de memória, pode haver um aumento de desempenho à medida que as tabelas são armazenadas na memória. Mas não funciona com grandes tabelas de dados pelo mesmo motivo.

· Federadas – As tabelas federadas permitem acessar as tabelas remotas do servidor MySQL. Isso pode ser feito sem qualquer integração de terceiros ou tecnologia de cluster.

Leia: SQL para Ciência de Dados: Por que SQL, Lista de Benefícios e Comandos

4. Escreva uma consulta para uma adição de coluna no MySQL

Para isso, é necessária uma consulta ALTER TABLE. Uma vez invocado, basta mencionar a coluna e sua definição. Algo assim:

carros ALTER TABLE

ADD COLUMN motor VARCHAR(80) APÓS a cor;

5. O que é uma chave estrangeira? Escreva uma consulta para implementar o mesmo no MySQL.

Uma chave estrangeira é usada para conectar duas tabelas. Uma FOREIGN KEY é um campo (ou uma variedade dele) em uma tabela que alude à PRIMARY KEY em outra tabela. O requisito FOREIGN KEY é utilizado para evitar atividades que esmagariam junções entre tabelas.

Para atribuir uma chave estrangeira, é importante mencioná-la ao criar a tabela. Ele pode ser atribuído invocando a consulta FOREIGN KEY. Algo assim:

FOREIGN KEY (Any_ID) REFERENCES Table_to_reference(Any_ID)

6. O que é o ambiente de trabalho MySQL?

MySQL Workbench é um instrumento visual unido para modeladores de banco de dados, designers e DBAs. MySQL Workbench fornece modelagem de dados, SQL e conjunto de ferramentas administrativas de configuração de servidor. Simplificando, o MySQL workbench torna possível operar o sistema de gerenciamento de banco de dados através da GUI.

7. Como funciona a importação/exportação de banco de dados no MySQL?

Pode ser feito de duas maneiras. Uma é usar o phpMyAdmin e a segunda é usar o acesso à linha de comando do MySQL. O último pode ser feito usando o comando chamado mysqldump. Fica mais ou menos assim:

· mysqldump -u nome de usuário -p nome do banco de dados > dbsample.sql

Para importar um banco de dados para o MySQL, é necessária apenas uma mudança de sinal, com um comando do MySQL. O comando fica mais ou menos assim:

· mysql -u nome de usuário -p nome do banco de dados < dbsample.sql

8. Como podemos deletar uma coluna ou uma linha no MySQL?

Agora, a eliminação de uma coluna pode ser feita simplesmente usando o comando ALTER TABLE e, em seguida, usando o comando DROP. Fica mais ou menos assim:

ALTER TABLE table_name DROP nome da coluna;

Para descartar uma linha, primeiro, é necessária uma identificação para a linha. Quando isso estiver à mão, use o comando DELETE em conjunto com o comando condicional WHERE. Algo assim:

DELETE FROM cars WHERE carID = 3;

9. Quais são as diferentes maneiras de unir tabelas no MySQL?

Join é usado para vincular uma ou mais tabelas, com os valores da coluna comum em ambas as tabelas. Basicamente, existem quatro tipos de junções:

1. Inner Join – Inner join usa um predicado de junção, que é uma condição usada para fazer a junção. Aqui está a sintaxe:

SELECT algo FROM tablename INNER JOIN outra tabela ON condição;

2. Junção Esquerda – A Junção Esquerda também requer uma condição de junção. A junção à esquerda escolhe as informações que começam na tabela à esquerda. Para cada entrada na tabela à esquerda, a esquerda compara cada entrada na tabela à direita. Aqui está a sintaxe:

SELECT algo FROM tablename LEFT JOIN outra tabela ON condição;

3. Junção Direita – Oposta à junção esquerda e, com uma diferença na consulta, esse é o nome da junção. Aqui deve-se tomar cuidado com a ordem das tabelas. Aqui está a sintaxe:

SELECT algo FROM tablename LEFT JOIN outra tabela ON condição;

4. Cross Join – Cross join não tem condição de join. Faz um cartesiano de linhas de ambas as tabelas. Aqui está a sintaxe:

SELECT algo FROM tablename CROSS JOIN outra tabela;

Nota: Ao lidar com apenas uma tabela, a auto-junção também é possível.

É uma das questões de entrevista mais tratadas com MySQL . Os entrevistadores gostam de ver se o candidato entende o básico ou não e aderir a um dos conceitos centrais.

Leia: Perguntas e respostas da entrevista PHP

10. Uma chave primária pode ser descartada no MySQL? Se sim, como?

Sim, é possível remover a chave primária de uma tabela. O comando a ser usado novamente é o ALTER TABLE seguido de DROP. Fica assim:

ALTER TABLE nome_tabela DROP PRIMARY KEY;

11. O que são Procedimentos no MySQL?

Procedimentos (ou procedimentos armazenados) são subprogramas, assim como em uma linguagem regular, embutidos no banco de dados. Um procedimento armazenado consiste em um nome, instrução(ões) SQL e parâmetros. Ele utiliza o cache no MySQL e, portanto, economiza tempo e memória, assim como as instruções preparadas.

12. O que é um gatilho no MySQL?

Um gatilho é um objeto de banco de dados associado à tabela no MySQL. Ele é ativado quando uma ação especificada ocorre.

Um gatilho pode ser invocado após ou antes do evento ocorrer. Pode ser usado em INSERT, DELETE e UPDATE. Ele usa a respectiva sintaxe para definir os gatilhos. Por exemplo, ANTES DE INSERIR, DEPOIS DE EXCLUIR, etc.

13. Como adicionar usuários no MySQL?

Simplificando, o usuário pode ser adicionado usando o comando CREATE e especificando as credenciais necessárias. Primeiro, faça login na conta MySQL e aplique a sintaxe. Algo assim:

CREATE USER 'testuser' IDENTIFICADO POR 'amostra de senha';

Os usuários podem receber permissões, pelos seguintes comandos:

GRANT SELECT ON * . * PARA 'usuário de teste';

14. Qual é a principal diferença entre Oracle e MySQL?

A principal diferença é que o MySQL funciona em um banco de dados de modelo único. Isso significa que ele só pode funcionar com uma estrutura base, enquanto o Oracle é um banco de dados multimodelo. Isso significa que ele pode suportar vários modelos de dados, como gráfico, documento, valor-chave, etc.

Outra diferença fundamental é que o suporte da Oracle vem com um preço para soluções industriais. Enquanto o MySQL é de código aberto.

Agora, esta pergunta é uma das perguntas da entrevista do MySQL que deve ser entendida com cuidado. Porque lida diretamente com os padrões da indústria e o que a empresa deseja.

15. O que é CHAR e VARCHAR no MySQL?

Ambos definem uma string. A principal diferença é que CHAR é um comprimento fixo enquanto VARCHAR é um comprimento variável. Por exemplo, se CHAR(5) estiver definido, ele precisará de exatamente cinco caracteres. Se VARCHAR(5) for definido, ele poderá ter no máximo cinco caracteres. Pode-se dizer que o VARCHAR tem mais eficiência no uso da memória, pois pode ter alocações de memória dinâmicas.

16. Quais drivers são necessários para o MySQL?

Existem muitos tipos de drivers no MySQL. Principalmente eles são usados ​​para conexões com diferentes linguagens computacionais. Alguns deles estão listados abaixo:

· Driver PHP

· JDBC

· OBDC

· Driver Python

· C - Envoltório

· Drivers Perl e Ruby

17. O que é uma declaração LIKE? Explique % e _ em LIKE.

Ao usar filtros em comandos como SELECT, UPDATE e DELETE, as condições podem exigir um padrão para detecção. LIKE é usado para fazer exatamente isso. LIKE tem dois caracteres curinga, a saber % (porcentagem) e _ (sublinhado). Porcentagem(%) corresponde a uma sequência de caracteres, enquanto o sublinhado corresponde a um único caractere.

Por exemplo, %t detectará árvores e chá. No entanto, _t detectará apenas um caractere extra, ou seja, strings como ti ou te.

18. Como converter timestamps para data no MySQL?

É uma questão bastante simples que requer conhecimento em dois comandos, como DATE_FORMAT e FROM_UNIXTIME.

DATE_FORMAT(FROM_UNIXTIME(`date_in_timestamp`), '%e %b %Y') AS 'date_formatted'

Leia também: Perguntas e respostas da entrevista sobre Java

19. Uma consulta pode ser escrita em qualquer caso no MySQL?

Esta pergunta da entrevista do MySQL muitas vezes confunde as pessoas que estão apenas começando com o MySQL. Embora, na maioria das vezes, as consultas sejam escritas em maiúsculas ou algumas em minúsculas, não há distinção entre maiúsculas e minúsculas nas consultas do MySQL.

Por exemplo, ambos create table tablename e CREATE TABLE tablename funcionam bem.

No entanto, se necessário, é possível tornar a consulta sensível a maiúsculas e minúsculas usando a palavra-chave BINARY.

Esta pergunta da entrevista do MySQL pode ser complicada, especialmente quando solicitada a fazer a consulta sensível a maiúsculas e minúsculas explicitamente.

20. Como salvar imagens no MySQL?

As imagens podem ser armazenadas no banco de dados MySQL convertendo-as em BLOBS. Mas não é o preferido devido à grande sobrecarga que cria. Além disso, ele coloca carga desnecessária na RAM enquanto carrega todo o banco de dados. Portanto, é preferível armazenar os caminhos no banco de dados e armazenar as imagens no disco.

21. Como obter resultados de condição múltipla de dados no MySQL?

Existem duas maneiras de fazê-lo. A primeira é usar a palavra-chave OR enquanto estiver usando a condição WHERE. A outra é usar uma lista de valores para verificar e usar IN com WHERE.

22. Quais são os diferentes formatos de arquivo usados ​​pelo MyISAM?

Normalmente, uma tabela MyISAM é armazenada usando três arquivos em disco. O arquivo de dados e o arquivo de índice, que são definidos com extensões .MYD e .MYI, respectivamente. Existe um arquivo de definição de tabela que possui extensão .frm.

23. Como o DISTINCT funciona no MySQL?

DISTINCT é usado para evitar o problema de duplicidade ao buscar os resultados de uma consulta específica. DISTINCT é usado para garantir que os resultados não contenham valores repetidos. DISTINCT pode ser usado com a cláusula SELECT. Aqui está a sintaxe para isso:

SELECT DISTINCT algo FROM tablename;

24. Existe algum limite superior para o número de colunas em uma tabela?

Embora a limitação de tamanho exato dependa de muitos fatores, o MySQL tem um limite rígido no tamanho máximo de 4096 colunas. Mas, como dito, para uma determinada tabela, o máximo efetivo pode ser menor.

25. O que são Listas de Controle de Acesso ou ACLs, de acordo com o MySQL?

As ACLs ou listas de controle de acesso são usadas de forma a fornecer uma diretriz de segurança no banco de dados MySQL. O MySQL fornece segurança baseada em ACLs para todas as tarefas executadas pelos usuários, como solicitações de conexão, consultas e qualquer outra operação.

26. Como fazer conexões persistentes no MySQL?

Ao fazer uma solicitação de conexão, se Mysql_pconnect for usado em vez de mysql_connect, ele poderá tornar a conexão persistente. Aqui 'p' significa persistente. A conexão com o banco de dados não é fechada todas as vezes.

27. Explique a instrução SAVEPOINT no MySQL.

SAVEPOINT é uma maneira de fazer subtransações no MySQL, que também são conhecidas como transações aninhadas.

SAVEPOINT marca um ponto em uma transação regular. Indica um ponto para o qual o sistema pode reverter.

Confira: Salário de Desenvolvedor SQL na Índia

Aprenda cursos de desenvolvimento de software online das melhores universidades do mundo. Ganhe Programas PG Executivos, Programas de Certificado Avançado ou Programas de Mestrado para acelerar sua carreira.

Conclusão

Então, essas foram algumas perguntas da entrevista do MySQL . Para conhecer o assunto e outros preparativos, visite os cursos de upGrad e programas de PG que o ajudam a encontrar o caminho certo e as aplicações para impulsionar sua carreira.

Se você está curioso para aprender sobre SQL e mais sobre desenvolvimento full-stack, confira o Programa PG Executivo do IIIT-B & upGrad em Desenvolvimento de Software Full Stack, que é criado para profissionais que trabalham e oferece mais de 10 estudos de caso e projetos, práticas práticas em workshops, orientação com especialistas do setor, 1-on-1 com mentores do setor, mais de 400 horas de aprendizado e assistência de trabalho com as principais empresas.

Prepare-se para uma carreira do futuro

Inscreva-se agora para o Programa PG Executivo em Desenvolvimento Full Stack