0% acharam este documento útil (0 voto)
25 visualizações13 páginas

Banco de Dados: 1. Conceitos Gerais: Acesso Sequencial Acesso Direto

Enviado por

leticiaeste704
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
25 visualizações13 páginas

Banco de Dados: 1. Conceitos Gerais: Acesso Sequencial Acesso Direto

Enviado por

leticiaeste704
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 13

Banco de Dados

O objetivo do banco de dados é registrar instâncias separadas de características


semelhantes.

1. Conceitos Gerais:
Acesso Sequencial - Registros acessados sequencialmente.

Acesso Direto - Registros armazenados e acessados de maneira direta.

O banco de dados se divide em: Banco de dados, Sistema Gerenciador, Linguagem de


Exploração e Programas adicionais.

Tipos de modelo
1 - Dados Hierárquicos

2 - Modelo em Rede - Não tem isso de hierarquia, ligados de uma forma de rede inteligente.

O que vamos ver em todo BDA:


3 - Modelos Relacionais - > A partir de um dado eu posso caminhar entre eles, contanto que eu,
o construtor dos dados especifique essas relações.
DDL e DML: A Base da Linguagem SQL

DDL (Data Definition Language) e DML (Data Manipulation Language) são subconjuntos

da linguagem SQL que desempenham funções distintas na criação e manipulação de bancos de

dados.

DDL (Data Definition Language) - Definindo a Estrutura

A DDL é utilizada para definir e modificar a estrutura de um banco de dados. Ou seja, ela é

responsável por criar, alterar e excluir objetos como tabelas, índices, views e outras estruturas

que compõem o banco.

Comandos DDL comuns:

● CREATE: Cria novos objetos no banco de dados.

○ CREATE TABLE clientes (id INT PRIMARY KEY, nome VARCHAR(100), email
VARCHAR(100));

● ALTER: Modifica a estrutura de objetos existentes.

○ ALTER TABLE clientes ADD COLUMN telefone VARCHAR(20);

● DROP: Exclui objetos do banco de dados.

○ DROP TABLE clientes;

DML (Data Manipulation Language) - Manipulando os Dados

A DML é utilizada para manipular os dados dentro das tabelas de um banco de dados. Com ela,

você pode inserir, atualizar e excluir registros.

Comandos DML comuns:

● INSERT: Insere novos registros em uma tabela.


○ INSERT INTO clientes (nome, email) VALUES ('João Silva', 'joao@email.com');

● UPDATE: Atualiza registros existentes em uma tabela.

○ UPDATE clientes SET email = 'novoemail@email.com' WHERE id = 1;

● DELETE: Exclui registros de uma tabela.

○ DELETE FROM clientes WHERE id = 2;

● SELECT: Consulta dados em uma tabela.

○ SELECT * FROM clientes;

Resumindo

Tipo Função Comandos Exemplos

DDL Define a estrutura do banco de dados CREATE, ALTER, DROP

DML Manipula os dados dentro das tabelas INSERT, UPDATE, DELETE, SELECT

Em resumo:

● DDL é como construir a casa: define os cômodos, paredes e estrutura.

● DML é como mobiliar e utilizar a casa: coloca os móveis, decora e realiza as atividades

do dia a dia.

INSTALAÇÃO DA IDE NO WINDOWS


Vídeo que ensina: <https://youtu.be/a5ul8o76Hqw?si=MbAaSifgISGFf5TA>
Comandos do SQL

Run file Ctrl + enter

Criar banco de dados (modo simples) create database nome_banco;


DDL (Definição de dados)

Criar banco de dados (mais otimizado) create database nome banco


default character set utf8mb3
default collate utf8_general_ci;

Criar tabela Create table nome_tabela;


DDL (Definição de dados)

Visualizar estrutura da tabela describe nome_tabela;


desc

Excluir database drop database nome_banco;

Selecionar indiretamente o banco de dados use nome_banco;

Campo obrigatório not null

Leitura especifica enum(‘M’, ‘F’)

Somatório auto_increment

“Ponteiro” de identificador único primary key(id)

insert into nome_tabela


(constantes)
values
Inserir dados numa tabela (‘valores’);

DML (Manipulação de dados)

Visualizar dados inseridos na tabela select * from nome_tabela


Obs: esse *, significa tudo

Alterar tabela alter table nome_tabela


DDL (Manipulação da estrutura)

alter table nome_tabela


add column nome tipo_de_dado;
Adicionar coluna/campo
Obs: para simplificar não precisa digitar
column, pois já reconhece.

Remover coluna/campo alter table nome_tabela


drop column nome;

Adicionar coluna/campo numa posição alter table nome_tabela


específica sem ser o primeiro add column nome tipo_de_dado after
nome_da_coluna;

Adicionar coluna/campo na primeira posição alter table nome_tabela


add column nome tipo_de_dado first;

Modificar algo da estrutura coluna alter table nome_tabela


modify column nome tipo_de_dado_alterar;

alter table nome_tabela


Alterar nome da coluna change column nome_atual nome_futuro
tipo_ de_dado;

Alterar nome da tabela alter table nome_tabela


rename to nome_mudar;

Criar tabela com base em uma condição de dreate table if not exists nome_tabela ():
que só pode se não existir

Deletar tabela drop table nome_tabela;


DDL (Manipulação da estrutura)

Deletar banco de dados drop database nome_banco;

Atualizar algo das linhas, o aval update nome_tabela


DML

update nome_tabela set nome_coluna = ‘o


novo elemento’ where identificador = ‘dado
do identificador’

Atualizar um dado da coluna pela row update cursos


set nome = 'PHP', ano = '2015'
where idcurso = '4';
select * from cursos;

delete from nome_tabela where idcurso = ‘1’;

Deletar linha de uma tabela Mais de uma linha de uma vez


delete from nome_tabela where idcurso in ('8',
'9', '10');

DELETE - DML

Deletar todas as linhas de uma tabela Truncate table nome_tabela;


TRUNCATE - DML
Obs: pode emitir o table

CONSTANTES DOS ATRIBUTOS


nome varchar(30) = vai ocupar 30 caracteres de um nome que pode variar;
tinyint(3) = ocupa 3 bytes;
char(1) = ocupa um caractere -> F ou M, vai ta reservado;
Text = para textos longos, como uma descrição
Ao criar um atributo ano, seu tipo vai ser year. Ex.: ano year
Unique = Só pode existir um atributo com aquele dado em específico.
Unsigned = não aceita sinal, ou seja, -1, -2 e etc.
Varchar = é uma str que ocupa somente o que o usuário digitou (com a limitação de caracteres
que o adm selecionou);
Tinyint = é um int que ocupa menos espaços, somente 3 bytes;
char = reserva uma coisa invariável;

Restrição - > NOT NULL; limit - vai limitar tantas vezes aquilo pode rodar.

Drop table e truncate


Diferenças
- O drop table apaga os dados e a estrutura, o truncate só apaga os dados e mantém a
estrutura.
-
Usando condição para remover
drop table if exists teste;
Usando condição para adicionar uma tabela (depois que tiver 1)
create table if not exists nome_tabela();
Em sql, temos 4 tipos de dados:

Exemplo de banco de dados cadastro


Obs: tanto faz escrever os comandos em maiúsculo ou minúsculo, em boas práticas, mais
viável em maiúsculo.

CREATE DATABASE cadastro;

create table pessoas(nome varchar(30), idade tinyint, peso float, sexo char(1), altura float,
nacionalidade varchar(20));

use cadastro;

describe pessoas; = vai ‘printar’ na tela a estrutura da tabela pessoas


Otimização da estrutura

Primeiro, vamos excluir a tabela de cadastro, utilizando drop database nome_banco. Criar
novamente o database, depois, vamos adicionar 2 parâmetros que vão se chamar constraints
(default character set utf8mb3) que vai meio que padronizar com a nossa acentuação, e o outro
collation (default collate utf8_general_ci).
Depois, vamos novamente criar aquela tabela. Mas antes, vamos lembrar que teremos que
substituir o atributo de idade e botar como nascimento. Assim, vai ficar mais otimizado. E no
final, antes de encerrar o comando, botaremos novamente o utf8. Sendo assim, ficará nesse
momento assim:
create table pessoas (
nome
nascimento
sexo
peso
altura
nacionalidade
) default charset = utf8mb3;

No atributo nome, vamos aprimorar ele adicionando o comando not null, ou seja, vamos
dizer que aquele campo não pode ficar vazio, é obrigatório. O nascimento levará somente o tipo
de dado date. O sexo, vai ser o tipo de dado enum(‘M’, ‘F’), ou seja, to dizendo que vou aceitar
somente M ou F, tornando o recebimento dos dados mais rígido. Logo depois no peso, vai ser
decimal(5,2). Isso quer dizer que vamos ter 5 espaços e 2 deles, vão ser depois da vírgula. A
altura vai seguir a mesma lógica. Vai ser: decimal(3, 2), então 3 espaços e dois depois da vírgula.
E por fim, teremos a nacionalidade que vai seguir com o varchar(20), só que com um default
‘Brasil’, que caso o usuário não digite nada, fique como padrão o brasil. Campos com acento,
espaço utilizas-se crase. Lembrando, que não é obrigatório essa crase.
create table `pessoas` (
`nome` varchar(30) not null,
`nascimento` date,
`sexo` enum('M', 'F'),
`peso` decimal(5,2),
`altura` decimal(3, 2),
`nacionalidade` varchar(20) default 'Brasil'
) default charset = utf8;

Porém, vem um problema. Não podemos ter 1 mesma pessoa sendo adicionada mais de 1
vez. Com isso, vem o identificador único. Colocaremos ele como atributo dentro da tabela de
pessoas. Ele vai ser int e não pode ficar vazio. E abaixo uma função de chave primária recebendo
esse id como argumento.
create table `pessoas` (
`id` int not null auto_increment,
`nome` varchar(30) not null,
`nascimento` date,
`sexo` enum('M', 'F'),
`peso` decimal(5,2),
`altura` decimal(3, 2),
`nacionalidade` varchar(20) default 'Brasil',
primary key(id)
) default charset = utf8mb3;
Inserindo dados
Para inserir os dados, primeiro, vamos separar todos os atributos dentro de uma lista e
depois em outra linha, inserir os dados.

(nome, nascimento, sexo, peso, altura, nacionalidade)

('1', 'Rannyzita', '2007-06-02', 'F', '45.0', '1.50', 'Brasil');

Só que para isso funcionar, entrará em ação o insert into nome_tabela e depois os valores,
values retirando também o id, já que é um auto implement:
insert into pessoas
(nome, nascimento, sexo, peso, altura, nacionalidade)
values
('Rannyzita', '2007-06-02', 'F', '45.0', '1.50', 'Brasil');

E depois para visualizar, só da esse comando:


select * from nome_tabela

Se nos values estiver com a mesma ordem da tabela, podemos emitir a linha de
constantes.
insert into pessoas values
(default, 'Bianca', '2007-09-17', 'F', '45.7', '1.57', 'Brasil');

select * from pessoas

Podemos inserir dados mais simplificados caso a ordem dos dados que vão ser inseridos
esteja correlacionado com a ordem da estrutura dos atributos dentro da tabela e adicionar
múltiplos dados em um só comando, segue abaixo:
insert into pessoas value
(default, ‘Carlos’, ‘2000-07-1’, ‘M’, ‘67’, ‘1.81’, ‘EUA’),
(default, 'Bianca', '2007-09-17', 'F', '45.7', '1.57', 'Brasil'),
('Rannyzita', '2007-06-02', 'F', '45.0', '1.50', 'Brasil');
Alterando Dados
Para alterar tabela vamos usar o comando alter table. E depois adicionaremos uma
coluna/campo, com o comando add column nome_coluna tipo de dado. Ficando assim:
alter table pessoas
add column profissao varchar(10);

Podemos excluir colunas…


alter table pessoas
drop column profissao;

E podemos modificar elas:


Alter table pessoas
Modify column profissao varchar(20) not null default ‘’;

Alterar o nome da coluna:


Alter table pessoas
Change column profissao prof varchar(20);

Além disso, podemos mudar o nome da tabela.


Alter table pessoas
rename to gafanhotos;

Aqui aplicamos uma condição de se não existir uma tabela com tal nome, criar.
Aplicamos duas novas constantes: unique e unsigned. Unique - algo único - e unsigned - sem
sinal negativo. Lembrando que ao colocarmos um padrão para o ano, temos que botar entre
aspas, mesmo sendo um número.

create table if not exists cursos (


nome varchar(30) not null unique,
descricao text,
carga int unsigned,
totalaulas int unsigned,
ano year default '2016'
) default charset = utf8mb4;

Depois, colocaremos a chave primária:


alter table cursos
add idcurso int not null auto_increment first;
alter table cursos
add primary key (idcurso);

Ou:

alter table cursos


add column idcurso int not null auto_increment primary key first;

A estrutura seria: adicionar + nome + tipo de dado + constante + constante +


característica + posição.
Manipulando Linhas

DELETE FROM `cadastro`.`gafanhotos` WHERE (`id` = '5');

Primeiro vamos modificar linhas incorretas. Para isso, usaremos update cursos, para
atualizar a tabela cursos e abaixo, vamos utilizar o set nome_coluna = novo_nome e o where
para identificar (graças ao identificador único).
update cursos
set nome = 'HTML5'
where 'idcurso' = '1';

Temos um comando muito perigoso que apaga literalmente todos os dados/rows da


tabela.
Truncate table cursos;
Com isso, irá excluir todas linhas. Portanto, é bastante viável ter um backup do seu banco
de dados.

Cópia de Gerenciamento do Banco de dados


Backup de um banco de dados = dump

1 - server
2 - data export
3 - data import

Você também pode gostar

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy