Introdução a Banco de Dados Relacional e SQL
Duração:
20hs
Este curso visa introduzir os conceitos básicos, modelos e arquiteturas de banco de dados, que são usados em conjunto com as linguagens de programação atuais do mercado. Após o curso, o aluno será capaz de criar um banco de dados relacional para usar juntamente com uma linguagem de programação de sua escolha, além de ser capaz de usar a linguagem SQL, que é a linguagem comercial mais difundida para o modelo relacional, para realizar consultas em seus bancos de dados
Objetivos
- Introduzir os conceitos básicos de banco de dados
- Ensinar os modelos e arquiteturas de banco de dados, que são usados em conjunto com a linguagens de programação atuais do mercado
- Tratar de modelagem de banco de dados usando o paradigma entidade relacionamento
- Conhecer modelagem dados, com os conceitos de entidade, atributos, domínio, chave primária, chave estrangeira e relacionamento
- Propor o estudo da linguagem SQL, que é a linguagem de consulta comercial mais difundida para o modelo relacional
Pré-requisitos
- Curso T@rgetTrust de Lógica de Programação
Público alvo
- Desenvolvedores de Aplicações
- Designers
- Profissionais do Suporte Técnico
- Programadores
- Web Designers
- Web Developers
- Web Managers
- Webmasters
Conteúdo
1. Introdução
- Ciclo de Vida do Desenvolvimento de Sistemas
- Histórico de Bancos de Dados
- Banco de Dados Relacional
- Modelos de Dados
- Modelo ER
- Convenções do Modelo Entidade-Relacionamento
- Terminologia Utilizada em Bancos de Dados Relacionais
- Relacionando Múltiplas Tabelas
- Visão Geral da Modelagem de Banco de Dados
- Etapas da Modelagem de Banco de Dados
- Análise e Formulação de Requisitos
- Projeto Conceitual
- Projeto Lógico
- Projeto Físico
- Metodologia
2. Desenvolvimento de um Banco de Dados
- Fases do desenvolvimento de um Banco de Dados
- Exemplo
3. Conceitos Básicos de Modelagem de Dados
- Modelo Entidade-Relacionamento (E-R)
- Convenções do Diagrama E-R
- Identificando e modelando Entidades
- Relacionamentos
- Tipos de Relacionamentos
- Layout do Diagrama E-R
- Definindo Atributos (Revisão)
- Distinguindo Atributos de Entidades - Continuação
- Identificadores Únicos
4. Conceitos Avançados de Modelagem de Dados
- Normalizando o Modelo de Dados
- Primeira Forma Normal
- Segunda Forma Normal
- Terceira Forma Normal
- Resolvendo Relacionamentos Muitos para Muitos (M:M)
- Modelando Dados Hierárquicos
- Modelando Relacionamentos Recursivos
- Modelando Supertipos e Subtipos
- Modelando Relacionamentos Exclusivos
- Modelando Dados considerando o Tempo
- Modelando Relacionamentos Complexos
5. Fundamentos SQL
- SQL e Banco de Dados Relacional
- Comunicando com um RDBMS utilizando SQL
- Histórico do SQL
- Vantagens e desvantagens
- Comandos SQL/92
- Arquitetura Client/Server
6. Comandos Básicos
- Escrevendo Comandos SQL
- Comparando com outros servidores
- Restrições de Chave
- Alteração de tabelas
- Eliminação de tabelas
- Comando SELECT
- Modelo Básico
- Selecionando todas as Colunas
- Selecionando Colunas Específicas
- Padrões de Cabeçalho de Colunas
- Definindo um Alias de Coluna
- Utilizando Alias de Colunas
- Operador de Concatenação
- Strings de Caracteres Literais
- Linhas Duplicadas
- Eliminando Linhas Duplicadas
- Exibindo a Estrutura de Tabelas
- Expressões Aritméticas
- Utilizando Operadores Aritméticos
- Precedência dos Operadores
- Utilizando Parênteses
- Definindo um Valor Nulo
- Valores Nulos em Expressões Aritméticas
7. Restringindo e Ordenando
- Restrição e Ordenação
- Limitando Linhas Utilizando uma Seleção
- Limitando as Linhas Selecionadas
- Utilizando a Cláusula WHERE
- Strings de Caractere e Datas
- Operadores de Comparação
- Utilizando os Operadores de Comparação
- Outros Operadores de Comparação
- Operador BETWEEN
- Operador IN
- Operador LIKE
- Operador IS NULL
- Operadores Lógicos
- Operadores AND
- Operador OR
- Operador NOT
- Regras de Precedência
- Cláusula ORDER BY
- Classificando em Ordem Descendente
- Ordenando pelo Alias de Coluna
8. Join - Selecionando Dados de Várias Tabelas
- Obtendo Dados a Partir de Múltiplas Tabelas
- O que é um Join?
- Produto Cartesiano
- Gerando um Produto Cartesiano
- O que é um Equijoin?
- Recuperando Registros com Equijoins
- Qualificando Nomes de Colunas Ambíguos
- Condições Adicionais de Pesquisa com o Operador AND
- Utilizando Alias de Tabela
- Relacionando mais de Duas Tabelas
- Non-Equijoins
- Recuperando Registros com Non-Equijoins
- ANSI Join
- Outer Joins
- Recuperando Registros Utilizando Outer Join
- Self Joins
- Relacionando uma Tabela com Ela Mesma