Introdução a Banco de Dados

Quem Sou eu?
Daniel Oliveira Araújo
- Graduado em Telemática pelo IFCE
- Instrutor da UTD desde 2016
- Iniciação à Programação
- Introdução à Banco de Dados
- Java com banco de Dados
- Instrutor E-Jovem entre 2015-2017
- Instrutor a distância do Projeto MedioTec no IFCE

E Agora?
Quem são Vocês?
O que vamos ver no curso
- O que é banco de dados
- Tipos de banco de dados
- Entendendo SGBD
- Arquitetura de banco de dados
- Modelagem
- Modelo relacional
- Mapeamento relacional
- Criando e alterando um banco de dados
- Introdução a linguagem SQL
- Manipulando dados
Contato


Contato
- danieloliveira14@gmail.com
- https://github.com/Pakato14


Material de Apoio




Antes de iniciarmos a aula acesse o link
https://goo.gl/forms/wvvwMzniHtedIa6u2
Aula 01
Conceitos Básicos
- A área de banco de dados é de grande importância no mundo da informática, uma vez que a informação é um bem precioso e deve ser armazenada de forma coerente e adequada, pois é de fundamental importância na tomada de decisão de uma empresa.
- Antigamente as empresas armazenavam informações em arquivos físicos, como fichas de cadastro, mas o surgimento e evolução dos computadores possibilitaram o armazenamento de dados de modo digital.
Dado, informação, fato e metadados
- Dado: é qualquer elemento identificado em sua forma bruta que, por si só, não conduz a uma compreensão de determinado fato ou situação.
- Fato: é um conjunto de dados relacionados. Registram o mundo real.
- Informação: é um agrupamento de dados de forma organizada para fazer sentido, gerar conhecimento, e auxiliar na tomada de decisões de uma empresa.
- Metadado: São dados sobre dados. Fornecem uma descrição das características dos dados e do conjunto de relacionamentos que ligam os dados encontrados no banco de dados.
Dado, informação, fato e metadados
- Para os conceitos acima temos o seguinte exemplo: O ano 2013 não faz nenhum sentido se você visualizá-lo sozinho. Se você agora analisar um conjunto de dados relacionados (fato), como: “Brasil”, “2013”, “1o Lugar”, “Copa das Confederações”. Esse fato registra algo do mundo real e a partir dele você chega à informação de que “O Brasil foi campeão da Copa das Confederações do ano de 2013”. Os metadados são algumas informações que você pode ter a respeito de cada dado, por exemplo: “Brasil” (País – nome do dado, texto – tipo do dado), 2013 (Ano – nome do dado, numérico – tipo do dado).
História
- Antigamente as empresas armazenavam dados em fichas de papel que eram organizadas em arquivos físicos através de pastas.
- Extrair informações e manter esses arquivos organizados era uma tarefa muito custosa. Além disso, o acesso à informação dependia da localização geográfica dos arquivos.
História
- Arquivos físicos evoluíram para arquivos digitais. No início cada entidade (clientes, funcionários, produtos, etc.) era um arquivo de dados que eram acompanhados de um “software simples” para manipular os dados do arquivo, esses softwares permitiam realizar operações de cadastro, alteração, exclusão e consulta nos arquivos digitais.
História
- Na década de 60 a empresa IBM investiu fortemente em pesquisas para solucionar estes problemas dos bancos de dados digitais primitivos.
- Em 1970, Edgar “Ted” Codd, matemático funcionário da IBM, escreveu um artigo que apresentava um modelo relacional onde usuários, sem conhecimento técnico, poderiam armazenar e extrair grandes quantidades de informações de um banco de dados.
História

História
- No final da década de 70 que a IBM desenvolveu um sistema baseado nas ideias do cientista, o “Sistema R”. Junto com esse sistema foi criado a linguagem de consulta estruturada (SQL – Structured Query Language) que se tornou a linguagem padrão para bancos de dados relacionais.
História
- Larry Ellison fundou uma pequena empresa. Recrutou programadores do Sistema R e da Universidade da Califórnia. Conseguiu colocar no
mercado o primeiro banco de dados relacional com base em SQL em 1979, o Oracle 2, bem antes da IBM. Em 1983, a empresa lançou uma versão portátil do banco de dados, teve um faturamento bruto anual de US$ 5.000.000 e mudou seu nome para Oracle. Impelida pela concorrência, a IBM finalmente lançou o SQL/DS, seu primeiro banco de dados relacional, em 1980. Na sequencia vieram SQL Server, MySQL, DBase III, Paradox, etc.
História

O que é um banco de dados?
- É uma coleção de dados inter-relacionados, representando informações sobre um domínio específico.
- Sempre que for possível agrupar informações que se relacionam e tratam de um mesmo assunto, podemos dizer que temos um banco de dados.
- Os bancos de dados tem o objetivo de fornecer os dados necessários aos Sistemas de Informação para processamento e geração de informação para os usuários.
O que é um banco de dados?
- Um banco de dados é projetado, construído e
preenchido com dados para um propósito específico. Ele representa algum aspecto do mundo real, algumas vezes chamado de “mini-mundo”. Mudanças no mini-mundo provocam mudanças no banco de dados.
Operação básicas
- Inserção: onde ele pode inserir um novo dado no banco;
- Remoção: quando ele apaga alguma registro de dados;
- Atualização: quando ele edita ou altera algum registro;
- Consulta: quando ele quer apenas visualizar os dados contidos no banco de dados.
Operação básicas
- Podemos dizer que um Sistema de Banco de Dados envolve 4 componentes básicos: Dados, Software, Hardware e Usuário.
Abstração de Dados
-
O grande objetivo de um sistema de banco de dados é prover aos usuários uma visão abstrata dos dados. Isto é, o sistema omite certos detalhes de como os dados são armazenados e mantidos. Entretanto, para que o sistema possa ser utilizado, os dados devem ser buscados de forma eficiente.
Níveis de Abstração
-
Nível Interno ou físico: o nível mais baixo de abstração descreve como os dados estão realmente armazenados. Neste nível se desenham os arquivos que contém a informação, a localização dos mesmos e sua organização, ou seja, criam-se os arquivos de configuração.
Níveis de Abstração
-
Nível conceitual: o próximo nível de abstração descreve quais dados estão armazenados de fato no banco de dados e as relações que existem entre eles.
Níveis de Abstração
- Nível externo ou de visão: é o mais próximo ao usuário e descreve apenas parte do banco de dados. Apesar do uso de estruturas mais simples do que no nível conceitual, alguma complexidade perdura devido ao grande tamanho do banco de dados. Muitos usuários do sistema de banco de dados não estarão interessados em todas as informações. Em vez disso precisam de apenas uma parte do banco de dados. O nível de abstração das visões de dados é definido para simplificar esta interação com o sistema, que pode fornecer muitas visões para o mesmo banco de dados.
Níveis de Abstração

SGBD
-
Sistema Gerenciados de Banco de Dados como um o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de uma base de dados. Seu principal objetivo é retirar da aplicação cliente a responsabilidade de gerenciar o acesso, a manipulação e a organização dos dados.
-
O SGBD disponibiliza uma interface para que seus
usuários possam incluir, alterar ou consultar dados previamente armazenados. O SGBD então é responsável por manipular os dados contidos no banco de dados.
Propriedades
-
Atomicidade: Capacidade de uma transação ter todas as suas operações executada ou nenhuma delas. É tudo ou nada. Caso a transação não aconteça totalmente o banco de dados executa um
rollback e retorna ao seu estado consistente anterior, caso todas a transação aconteça é executado o commit;
Propriedades
- Consistência: A execução de uma transição deve levar o banco de dados de um estado consistente a outro estado consistente.
-
Isolamento: A propriedade de isolamento garante que a transação não será interferida por nenhuma outra transação concorrente.
-
Durabilidade: A propriedade de durabilidade garante que o que foi salvo, não será mais perdido.
Características
-
Controle de Redundâncias - A redundância consiste no armazenamento de uma mesma informação em locais diferentes, provocando inconsistências. Se uma mesma informação estiver
armazenada em mais de um lugar pode acontecer de você atualizar em um lugar e esquecer-se de atualizar no outro, ficando o banco de dados inconsistente.
Características
- Controle de concorrência - O SGBD permite que duas ou mais pessoas acessem a mesma base de dados ao mesmo tempo e o sistema deve controlar para que um acesso não interfira no outro. Um sistema de compras Web por exemplo várias pessoas podem realizar uma compra ao mesmo tempo, e o próprio SGBD controla pra que os dados de todas as compras sejam gravados corretamente.
Características
-
Controle de Acesso - O SGDB tem mecanismos para criação de regras de segurança, que vão desde a definição de login e senha para os usuários, até a permissão de acesso ao SGBD e acesso aos dados
armazenados. É possível definir por exemplo que um usuário tem permissão somente para leitura de dados, e um outro usuário tenha permissão para criar base de dados e manipulá-la, mas não pode criar novos usuários ou fazer backup.
Características
- Controle de Integridade – Um SGBD pode definir regras que garantem a integridade dos dados. Essas regras são definidas para garantir que os dados contidos no banco de dados estejam corretos. Por exemplo, podemos definir uma regra em um banco que o campo sexo pode receber somente “M” para masculino e “F” para feminino, não aceitando outro tipo de letra, o que deixaria dados errados no banco.
- Backups - O SGBD apresenta facilidade para recuperar falhas de hardware e software, através da existência de arquivos de "pré-imagem" ou de outros recursos automáticos, exigindo minimamente a intervenção de pessoal técnico.
Aula 03
Modelagem
Modelagem
- Tem o objetivo de transmitir e mostrar uma representação única, não redundante, e resumida, dos dados de uma aplicação. A fase de modelagem é a principal etapa no projeto de desenvolvimento de um banco de dados. Por isso é muito importante que se dedique tempo e esforço no desenvolvimento de uma boa modelagem de dados.
Modelagem
- O projeto de desenvolvimento de modelagem de um banco de dados compreende as seguintes fases
Modelagem Conceitual
- Refere-se ao desenvolvimento de um modelo inicial da base de dados que reflitam as necessidades do usuário. Essa modelagem preocupa-se em descrever quais dados serão armazenados na base de dados e quais dados se relacionam. Para fazer o modelo conceitual é necessário entender que dados o usuário final espera que o sistema disponibilize. A modelagem conceitual fornece uma visão mais próxima do modo como os usuários visualizam os dados realmente.
Modelagem Lógica
- Compreende o processo de desenvolver como os dados serão armazenados no sistema e como irão se relacionar. Isso significa transformar o modelo conceitual obtido na primeira fase num modelo mais próximo da implementação, ou seja, fornece uma visão mais detalhada do modo como os dados são armazenados no computador. Nessa fase também são criados os dicionários de dados, e feita verificação se o modelo está normalizado, veremos os conceitos de normalização de dados mais a frente.
Implementação do modelo lógico
- Uma vez que toda a etapa de modelagem esteja concluída, será necessário implementar ou criar a base de dados no SGBD escolhido. Essa fase requer que o desenvolvedor conheça a linguagem SQL e conheça o SGBD selecionado.
Modelo de Dados
- Um modelo de dados compreende a descrição de dados que devem ser armazenados pelo sistema e como esses dados devem se relacionar. Para que seja possível fazer essa descrição, é utilizada uma linguagem de modelagem, que pode ser textual ou gráfica. Um modelo de dados deve explicitar os tipos de dados armazenados e as restrições que esses dados possuem.
Tipos de modelos de bancos de dados
- Modelo de banco de dados hierárquico
- Modelo relacional
- Modelo de rede
- Modelo de banco de dados orientado para objetos
- Modelo entidade-relacionamento
- Modelo documental
- Modelo entidade-atributo-valor
- Esquema em estrela
- O modelo relacional-objeto, que combina os dois que compõem seu nome
Modelo hierárquico
- O modelo hierárquico organiza dados em uma estrutura do tipo árvore, onde cada registro tem um único "pai" ou raiz. Registros "irmãos" são classificados em uma ordem específica. Essa ordem é usada como a ordem física para armazenar o banco de dados.
Modelo hierárquico
Modelo de Rede
- O modelo de rede se baseia no modelo hierárquico, permitindo relações muitas para muitas entre registros vinculados, implicando em vários registros "pai". Baseado na teoria de conjuntos matemáticos, o modelo é construído com conjuntos de registros relacionados. Cada conjunto consiste em um registro proprietário, ou "pai", e um ou mais registros de membro, ou "filho". Um registro pode ser um membro, ou "filho", em vários conjuntos, permitindo que esse modelo transmita relações complexas.
Modelo de Rede
Modelo Relacional
- O modelo mais comum, o modelo relacional, classifica dados em tabelas, também conhecidas como relações, cada uma das quais consiste em colunas e linhas. Cada coluna lista um atributo da entidade em questão, como preço, código postal ou data de nascimento. Juntos, os atributos em uma relação são chamados de domínio. Um determinado atributo ou combinação de atributos é escolhido como uma chave primária que pode ser consultada em outras tabelas, quando é chamada de chave estrangeira.
Modelo Relacional
Relacionamentos
Relacionamentos
- Algumas das dificuldades de quem começa os estudos de BD é entender as suas relações, que permitem que você organize uma consulta e possa ver os dados de uma nova maneira.
1-para-1
- Ocorre quando um registro de uma tabela tem uma, e apenas uma contraparte em uma outra tabela. Este tipo de relacionamento é muito raro de acontecer, já que é muito mais simples e eficiente agrupar os registros é uma única tabela.
1-para-1

1-para-N
- É o tipo de relacionamento mais comum de acontecer. Eles ocorrem quando um registro de uma tabela se relaciona com vários registros de uma outra tabela, mas que cada registro da segunda tabela só corresponde com um registro da primeira tabela. Uma tabela de categorias tem os seus registros e a tabela de produtos também, onde cada produto pertence a uma única categoria, mas nunca um produto pertencerá a várias categorias. Veja o exemplo da figura abaixo:
1-para-N

N-para-M
- Este ocorre quando um registro de uma tabela corresponde a um ou mais registros da segunda tabela e cada registro da segunda tabela corresponde a um ou mais registros da primera. Um exemplo simples, seria de uma tabela de professores e cursos, porque cada professor pode ensinar em mais de um curso e cada curso pode ter mais de um professor. Neste caso, devemos criar uma nova tabela, onde irá reduzir para um relacionamento 1-para-N entre as duas tabelas iniciais.
Aula 08
Modelo Entidade-Relacionamento
MER
- O Modelo Entidade-Relacionamento é um modelo conceitual, e deve estar o mais próximo possível da visão que o usuário tem dos dados. Tem por objetivo descrever quais dados deverão ser armazenados pela aplicação e como esses dados se relacionam.
Entidade
- Representa um conjunto de objetos de um mesmo tipo do mundo real e sobre os quais se pretende armazenar dados. Geralmente as entidades são reconhecidas por serem substantivos e uma forma simples de identifica-las em um domínio de aplicação é fazer as seguintes perguntas:
- Sobre que objetos ou coisas precisamos guardar informação?
- Há mais de um objeto deste tipo?
- Existe uma chave capaz de identificar cada um dos objetos unicamente?
Entidade

Entidade
| PERGUNTAS | RESPOSTAS |
|---|---|
| Sobre que objetos ou coisas precisamos guardar Informação? | Sim, temos que guardas as informações de todos os pedidos. |
| Há mais de um objeto deste tipo? | Sim, existem diversos pedidos e não apenas um. |
| Existe uma chave capaz de identificar cada um dos objetos unicamente? | Sim, cada pedido realizado possui um número único para controle de pedidos. |
Atributos
- Cada entidade possui algumas propriedades que definem suas características. Essas características das entidades são chamadas de atributos.
Atributos

Relacionamento

Cardinalidade
- A cardinalidade indica quantos objetos (instancias) de uma entidade, podem se relacionar com outra entidade através de um relacionamento.
Cardinalidade Mínima
- É o número mínimo de instâncias de uma entidade que devem se relacionar com uma instância de outra entidade.
- A cardinalidade mínima é usada para indicar o tipo de participação da entidade em um relacionamento e sempre ocupa a primeira posição dentro do parêntese que representa a cardinalidade.
Cardinalidade Mínima
- Parcial ou Opcional: quando uma ocorrência da entidade pode ou não participar de determinado relacionamento; é indicado pela cardinalidade mínima = 0 (zero).
- Total ou Obrigatória: quando todas as ocorrências de uma entidade devem participar de determinado relacionamento; é indicado pela cardinalidade mínima = 1.
Cardinalidade Máxima
- É o número máximo de instâncias de uma entidade que podem se relacionar com uma instância de outra entidade.
- A cardinalidade máxima pode assumir valores 1 e N, e ocupa a segunda posição dentro do parêntese que denota a cardinalidade de uma entidade em relação a outra.
Cardinalidade Máxima
- Cardinalidade 1:1 (Um para Um) – Ocorre quando uma instancia de uma entidade pode se relacionar a apenas um objeto de outra entidade e vice-versa.
- Por exemplo, um professor é diretor de uma escola, e uma escola só pode ser dirigida por um professor.

Cardinalidade Máxima
- Cardinalidade 1:N (Um para muitos) – Ocorre quando uma instancia de uma entidade pode se relacionar com mais de um objeto de outra entidade, mas a recíproca não é verdadeira. Por exemplo, em uma escola podem lecionar vários professores, porém um professor só pode lecionar em uma escola.

Cardinalidade Máxima
-
Cardinalidade N:N (Muitos para muitos) – Ocorre quando uma ocorrência de uma entidade pode se relacionar com mais de um objeto de outra entidade e vice versa. Por exemplo, um professor
pode lecionar mais de uma disciplina, assim como uma disciplina pode ser lecionada por mais de um professor.
Grau de um Relacionamento
-
O grau de um relacionamento indica quantas entidades estão envolvidas em um relacionamento.
Relacionamento Binário
-
É aquele em que duas entidades estão ligadas por um relacionamento.

Relacionamento Ternário
-
É quando existem três entidades envolvidas em um relacionamento. Digamos que queremos acrescentar na nossa modelagem que um professor leciona uma disciplina para uma turma.
-
Teríamos então que associar mais uma entidade ao relacionamento leciona. Ficaríamos então com um relacionamento ternário.
Relacionamento Ternário

Aula 10
Principais comando SQL
LINGUAGEM SQL
- O nome “SQL” significa “Structured Query Language” que em português quer dizer “Linguagem de Consulta Estrutura”. Essa linguagem teve seus fundamentos no modelo relacional de Codd (1970).
Composição
- A linguagem SQL é dividida em subconjuntos de acordo com as operações que se deseja efetuar sobre um banco de dados.
DDL
-
Data Definition Language - são usadas para definir a estrutura de banco de dados ou esquema. Alguns exemplos:
-
CREATE- para criar objetos no banco de dados
-
ALTER – altera a estrutura da base de dados
-
TRUNCATE – remover todos os registros de uma tabela, incluindo todos os espaços alocados para os registros são removidos
-
COMMENT – adicionar comentários ao dicionário de dados
-
RENAME – para renomear um objeto
-
DML
-
Data Manipulation Language - são utilizados para o gerenciamento de dados dentro de objetos do banco. Alguns exemplos:
-
INSERT – inserir dados em uma tabela
-
UPDATE – atualiza os dados existentes em uma tabela
-
DELETE – exclui registros de uma tabela,
-
CALL – chamar um subprograma PL / SQL
-
EXPLAIN PLAN – explicar o caminho de acesso aos dados
-
LOCK TABLE – controle de concorrência
-
DQL
-
Data Query Language - Ultilizado nas consultas dos dados:
-
SELECT- recuperar dados do banco de dados.
-
DCL
-
Data Control Language - Conjunto de comandos utilizados para controlar o nível de acesso de usuários. Alguns exemplos:
-
GRANT – atribui privilégios de acesso do usuário a objetos do banco de dados
-
REVOKE – remove os privilégios de acesso aos objetos obtidos com o comando GRANT
-
DTL ou TCL
-
TCL – Transaction Control Language – (Controle de Transações) são usados para gerenciar as mudanças feitas por instruções DML . Ele permite que as declarações a serem agrupadas em transações lógicas .
-
COMMIT – salvar o trabalho feito
-
SAVEPOINT – identificar um ponto em uma transação para que mais tarde você pode efetuar um ROLLBACK
-
ROLLBACK – restaurar banco de dados ao original desde o último COMMIT
-
Tipos de Dados
|
Char |
Este tipo de dados armazena uma string de tamanho fixo, com espaços à direita. O tamanho varia de 1 a 255 caracteres. Na consulta, o MySQL ignora os espaços que não foram ocupados. |
|
Varchar |
Armazena uma string de tamanho variável, com tamanho mínimo de 1 caracter e máximo de 255. |
| Tinyblob, Blob, Mediumblob, Longblob | Estes tipos de campo armazenam dados no formato binário. |
| String |
|---|
Tipos de Dados
| Date | Este tipo de dados pode armazenar uma data no formato AAAA-MM-DD |
| Datetime | Pode armazenar uma data no formato AAAA-MM-DD e uma hora no formato HH:MM:SS |
|
Timestamp |
Temos a possibilidade de inserir automaticamente a data/hora atual. Para que isso acontece, basta que ao campo não seja atribuído nenhum valor no momento de inserção do registo. |
| Time | Armazena um valor horário, no formato HH:MM:SS. |
| Year | Armazena um numero anual de dois ou quatro dígitos |
| Data/Hora |
|---|
Tipos de Dados
|
Int |
Tipo de dados que pode variar de -2147483648 a 2147483647 e de 0 a 4294967295, caso o parâmetro UNSIGNED seja utilizado. |
|
Float |
Armazena um número do tipo ponto flutuante de precisão simples. Varia de -3.402823466E+38 a -1.175494351E-38, 0, e 1.175494351E-38 a 3.402823466E+38 |
|
Double |
Armazena um número do tipo ponto flutuante de precisão dupla. |
| Decimal | Tipo de dados que se comporta como o do tipo CHAR, ou seja, cada dígito ocupa 1 byte. |
| Numéricos |
|---|
Atividade
- Criar uma nova base de dados chamado biblioteca.
- CREATE DATABASE IF NOT EXISTS biblioteca
- Criar a tabela livros contendo os seguintes campos:
- Código: inteiro com no máximo 8 dígitos
- Título: máximo de 40 caracteres
- Autor: máximo de 50 caracteres
- Editora: máximo de 20 caracteres
- Edição: inteiro com no máximo 2 dígitos
- O código é a chave primária e deve ser gerado automaticamente
- O Título e o Autor não podem ser vazios.
Banco de dados não Relacional
NoSQL
NoSQL
- É um termo genérico para uma classe definida de banco de dados que fornecem um mecanismo para armazenamento e recuperação de dados que são modelados de formas diferentes das relações tabulares usadas nos bancos de dados relacionais.
Uso do Termo
O termo NoSQL foi primeiramente utilizado em 1998 como o nome de um banco de dados não relacional de código aberto.
Seu autor, Carlo Strozzi, alega que o movimento NoSQL "é completamente distinto do modelo relacional e portanto deveria ser mais apropriadamente chamado "NoREL" ou algo que produzisse o mesmo efeito".
O Problema

Organização dos dados em função da aplicação.
Collections
-
Não possui tabelas, possui conjuntos de dados chamados collections, que, ao contrário de tabelas, não têm constraints (chave primária, chave estrangeira) e nem transações, além de não ter as limitações de uma tabela relacional. Dentro de uma coluna, você pode ter um array, uma lista de valores, algo impossível em uma tabela convencional.
Por que usar um banco de dados NoSQL?
-
Os bancos de dados NoSQL são ideais para muitos aplicativos de big data, mobilidade e web, que exigem maior escala e capacidade de resposta que as oferecidas pelos bancos de dados relacionais tradicionais. Com estruturas de dados mais simples e escalabilidade horizontal, os bancos de dados NoSQL respondem geralmente com maior velocidade e podem ser escalados com maior facilidade que os bancos de dados relacionais.
JSON
-
Com o crescimento de serviços no começo do século, o tráfego de informações também aumentou, e foi preciso criar uma forma simples de enviar informação de um servidor para um web browser, sem a necessidade de nenhum plugin para funcionar (como Flash).
-
Por esse motivo, Douglas Crockford identificou uma prática usada desde 1996 pela Netscape como a solução desse problema. Ele criou uma especi-
ficação para ela e batizou-a como Notação de Objetos JavaScript (JavaScript Object Notation), ou simplesmente JSON.
JSON

JSON

Instalação
Instalação
- Na sessão de downloads no site www.mongodb.com você tem três opções de downloads.

Instalação
- Na versão LTS do ubuntu ele vem acompanhado do MongoDB.
- Utiliza o terminal linux para usar os camando do Mongo
- Existe programas gerenciadores que pode usar o mongo através deles.
Gerenciadores MongoDb
- Robomongo
- Mongochef
- MongoVue
Robomongo
- É um aplicativo multiplataforma (disponível para sistemas Windows, Linux e Mac) para acesso e gerenciamento de bancos de dados MongoDB.
- O aplicativo é bem leve para ser executado e a interface é bem simples facilitando o seu uso.
- O software é open source e gratuito em sua versão mais básica. Pode também ser ativado um plano mensal com maiores features.
Robomongo

MongoChef
- Também é outro ótimo aplicativo para gerenciamento de bases mongodb.
- É multiplataforma (disponível para sistemas Windows, Linux e Mac) assim como o RoboMongo.
A versão não-comercial pode ser utilizada gratuitamente e suas versões pagas são vendidas por licenças e não por plano.
MongoChef

MongoVue
- Funciona apenas em plataforma Windows e possui uma interface elegante e altamente utilizável para se trabalhar com MongoDB, porém não é tão eficiente no quesito gestão de segurança dos dados na Web.
MongoVue

Principais Comandos
- use utd
- Comando para setar qual database usaremos, caso ela não existe será criada.
- show dbs
- Caso você já possua uma database criada e não lembre o nome.
- show collections
- E para ver os nomes das collections, após escolher qual database quer, com o comando use.
Principais Comandos
-
db.collection.insert(json);
- Para inserir dados na nossa database e em qual collection desejar, lembrando que collection tem uma função parecida com as tabelas dos bancos relacionais.
-
db.professores.insert({nome: ‘Daniel’, idade:35, disciplinas:[‘Iniciação à Programacao’, ‘Introdução à Banco de dados’], sexo: ‘m’});
Principais Comandos
-
db.professores.find()
- Lista os dados inseridos na base de dados
-
db.professores.find({nome: ‘Jean’})- Faz uma pesquisa com filtros
-
db.professores.find({nome: ‘Daniel’, idade:35}) -
db.professores.find({idade: {$gt:30}})- Retorna a lista de professores com idade acima de 30 anos
Introdução a Banco de Dados - Turma UTD 2018.1
By pakato
Introdução a Banco de Dados - Turma UTD 2018.1
- 211