O mais completo conhecimento de banco de dados MySQL + finalização de perguntas de entrevista

Bancos de dados, especialmente bancos de dados relacionais, são os mais comumente usados ​​por programadores. Para um bom engenheiro, apenas CRUD não é suficiente. Você também precisa entender seus princípios. Compreender seus princípios pode permitir que os programadores escrevam códigos mais confiáveis ​​e eficientes e melhorem sua capacidade de resolver problemas práticos. Este artigo usará o MySQL como Por exemplo, aprenda os princípios do banco de dados com todos.

Noções básicas de banco de dados

1. Por que usar um banco de dados

Os dados são armazenados na memória

Vantagens: velocidade de acesso rápido
Desvantagens: os dados não podem ser armazenados permanentemente

Os dados são salvos no arquivo

Vantagens: os dados são armazenados permanentemente
Desvantagens: 1) A velocidade é mais lenta do que as operações de memória, operações de IO frequentes 2) Consulta de dados inconveniente

Os dados são salvos no banco de dados

1) Os dados são armazenados permanentemente 2) A instrução SQL é usada para consultas convenientes e eficientes 3) O gerenciamento de dados é conveniente

2. O que é SQL?

Structured Query Language (Structured Query Language), conhecida como SQL, é uma linguagem de consulta de banco de dados. Função: usado para acessar dados, consultar, atualizar e gerenciar sistemas de banco de dados relacionais.

3. O que é MySQL?

MySQL é um sistema de gerenciamento de banco de dados relacional desenvolvido pela empresa sueca MySQL AB e é um produto da Oracle. O MySQL é um dos mais populares sistemas de gerenciamento de banco de dados relacional.Em termos de aplicações web, o MySQL é um dos melhores softwares de aplicação RDBMS (Relational Database Management System). É muito comumente usado no desenvolvimento de nível empresarial Java, porque o MySQL é open source e gratuito, e é fácil de expandir.

  1. Quais são os três paradigmas de banco de dados
  2. Quais são as tabelas mysql sobre permissões
  3. Quantos formatos de entrada o binlog MySQL possui? Quais são as diferenças?

Devido ao espaço limitado, uma parte é omitida aqui. Amigos que precisam da versão completa podem clicar no link abaixo

Link: 1103806531 Senha: CSDN

tipo de dados

1. Tipo inteiro

Incluindo TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT, que representam respectivamente 1 byte, 2 bytes, 3 bytes, 4 bytes e 8 bytes inteiros. Qualquer tipo de inteiro pode ser adicionado com o atributo UNSIGNED, indicando que os dados não têm sinal, ou seja, um inteiro não negativo.
Comprimento: Tipo inteiro pode ser especificado com comprimento, por exemplo: INT (11) significa tipo INT com comprimento 11. O comprimento não faz sentido na maioria dos cenários. Não limita o intervalo legal de valores, mas afeta apenas o número de caracteres exibidos e é significativo apenas quando é usado em conjunto com o atributo UNSIGNED ZEROFILL.
Por exemplo, suponha que o tipo seja definido como INT (5) e o atributo seja UNSIGNED ZEROFILL. Se os dados inseridos pelo usuário forem 12, os dados reais armazenados no banco de dados serão 00012.

2. Tipo de número real

Incluindo FLOAT, DOUBLE, DECIMAL.
DECIMAL pode ser usado para armazenar números inteiros maiores que BIGINT e pode armazenar decimais precisos.
FLOAT e DOUBLE têm uma gama de valores e suportam o uso de ponto flutuante padrão para cálculos aproximados.
FLOAT e DOUBLE são mais eficientes do que DECIMAL no cálculo. DECIMAL pode ser entendido como uma string para processamento.

3. Tipo de corda

Incluindo VARCHAR, CHAR, TEXT, BLOB
VARCHAR é usado para armazenar cadeias de caracteres de comprimento variável, ele economiza mais espaço do que os tipos de comprimento fixo.
VARCHAR usa 1 ou 2 bytes extras para armazenar o comprimento da string. Quando o comprimento da coluna é inferior a 255 bytes, use 1 byte para representação, caso contrário, use 2 bytes para representação.
Quando o conteúdo armazenado em VARCHAR excede o comprimento definido, o conteúdo será truncado.
CHAR tem comprimento fixo e espaço suficiente é alocado de acordo com o comprimento de string definido.
CHAR será preenchido com espaços conforme necessário para facilitar a comparação.
CHAR é adequado para armazenar strings muito curtas, ou todos os valores têm quase o mesmo comprimento.
Quando o conteúdo armazenado em CHAR excede o comprimento definido, o conteúdo também será truncado.

Estratégia de uso:
CHAR é melhor do que VARCHAR para dados de alteração frequente, porque CHAR não é propenso a fragmentação.
Para colunas muito curtas, CHAR é mais eficiente no espaço de armazenamento do que VARCHAR.
Preste atenção para alocar apenas o espaço necessário ao usá-lo. Colunas mais longas consumirão mais memória durante a classificação.
Tente evitar o uso de tipos TEXT / BLOB. Tabelas temporárias serão usadas durante a consulta, resultando em séria sobrecarga de desempenho.

4. Tipo de enumeração (ENUM)

Armazene dados exclusivos como uma coleção predefinida.
Às vezes, você pode usar ENUM em vez dos tipos de string comumente usados.
O armazenamento ENUM é muito compacto e comprimirá o valor da lista para um ou dois bytes.
Quando ENUM é armazenado internamente, ele na verdade armazena um inteiro.
Tente evitar o uso de números como constantes nas enumerações ENUM, porque é fácil se confundir.
A classificação é de acordo com o número inteiro armazenado internamente

5. Tipo de data e hora

Tente usar o carimbo de data / hora. A eficiência de espaço é maior do que data e hora. Geralmente,
é inconveniente armazenar carimbos de data / hora em inteiros.
Se você precisa armazenar algo sutil, pode usar o armazenamento bigint.
Vendo isso, essa pergunta real será mais fácil de responder.

motor

  1. A diferença entre o mecanismo de armazenamento MySQL MyISAM e InnoDB
  2. A diferença entre MyISAM e InnoDB
  3. Qual é a diferença entre o índice MyISAM e o índice InnoDB?
  4. 4 recursos principais do motor InnoDB
  5. Seleção de mecanismo de armazenamento

índice

  1. O que é um índice?
  2. Quais são as vantagens e desvantagens dos índices?
  3. Cenários de uso do índice (ênfase)
  4. Quais são os tipos de índices?
  5. Estrutura de dados do índice (árvore b, hash)
  6. Princípios básicos de indexação

Finalmente

Espero que este artigo seja útil para todos!

Devido ao espaço limitado, transações, bloqueios, visualizações, procedimentos armazenados e funções, gatilhos, instruções SQL comumente usadas, otimização de SQL, otimização de banco de dados, etc. não são mostrados neste artigo, mas eu os compilei em documentos, incluindo arquitetos. Um conjunto completo de tutoriais em vídeo e materiais sistemáticos sobre java, amigos necessitados podem clicar no link abaixo para receber

Link: 1103806531 Senha: CSDN

Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/weixin_48655626/article/details/108711452
Recomendado
Clasificación