SQL (Standard Query Language)
Fundamentals
É uma linguagem de programação para manipulação de banco de dados.
Surgiu para padronizar a maneira de execuar comandos dentro do SGBD
(Sistema Gerenciador de Banco de Dados)
Subconjuntos do SQL
DML (Data Manipulation Language) – Manipulação de dados (Principais
Comandos – insert, select e delete)
DDL (Data Definition Language) – Definição e Modificação de Dados
(Principais Comandos – create e drop)
DCL (Data Control Language) – Controle de Dados (Principais Comandos –
grant)
DTL (Data Transaction Language) – Alteração de Dados (Principais
Comandos – commit)
DQL (Data Query Language) – Comando de Dados e Extração de Dados
(Principais Comandos – select)
Banco de Dados
Definição: É uma coleção de dados sob um domínio específico,
armazenadas eletronicamente em um sistema computacional.
Geralmente controlado por um SGBD – (Sistema Gerenciador de Banco
de Dados)
Componentes de um Banco de Dados: Dados, Software, Hardware e
Usuário.
Tipos de Banco de Dados: Relacionais e Não Relacionais
Relacionais: Armazenagem de Dados, Atributos e Linhas ou Registros
responsáveis pela Organização, Ordenação
Sensitivity: Internal
Não Relacional: Atendem demandas que o banco não consegue
suprir, Mesclagem de Tabelas, imagens e mapas, armazenagem na
nuvem é um exemplo, armazenados em JSON.
Estrutura de um SGBD (Sistema Gerenciador de Banco de
Dados)
Objetivo: Separar as aplicações do usuário dos dados inteligados,
Abstração de Dados (Semelhante ao RLS do Power BI), o sistema
oculta determinados detalhes de suas informações.
Elementos: Servidor e Interface
Servidor: Armazenagem do Banco de Dados
Sensitivity: Internal
Interface: Permite escrever os códigos em SQL para acessar o banco
de dados.
Abstração de Dados (3 Níveis)
Nível de Visão do Usuário – Visões do Banco de Dados de acordo
com a necessidade individual de cada indivíduo. Separação por acesso.
Nível Conceitual – Definição de quais dados estão armazenados e
qual a relação entre eles, porém, sem oferecer detalhes dos dados.
Nível Físico – Nível mais baixo de abstração, de que maneira os
dados estão armazenados, detalhes dos dados e caminhos de
acesso.
Visão
Nível Conceitual
Nível Físico
Diferenças entre SQL e SGBDs
Linguagem SQL – É somente a linguagem de programação.
SGBD – É o Banco de Dados que usaremos o SQL pra manipular.
MySQL
SQL Server
Oracle Database
PostgreSQL
SSMS – SQL Server Management Studio
Sensitivity: Internal
Ambiente integrado para conectar ao banco de dados, escrever e executar
consultas, visualizar e configurar uma instância.
Instância – Contêiner onde colocamos nossos bancos de dados, estrutura de
um banco de dados dentro de um servidor.
Sensitivity: Internal