PostgreSQL: Banco de dados para aplicações web modernas
5/5
()
Sobre este e-book
Neste livro, Vinícius Carvalho explora as principais características do PostgreSQL, mostrando por que ele é seguro, poderoso, confiável e rápido. Através do desenvolvimento de um projeto, você vai aprender na prática as funções, consultas e administração de um banco de dados, podendo revisar seus conhecimentos nos exercícios elaborados pelo autor ao fim do livro.
Relacionado a PostgreSQL
Ebooks relacionados
MySQL: Comece com o principal banco de dados open source do mercado Nota: 4 de 5 estrelas4/5Primeiros passos com Node.js Nota: 0 de 5 estrelas0 notasOrientação a Objetos: Aprenda seus conceitos e suas aplicabilidades de forma efetiva Nota: 5 de 5 estrelas5/5Aplicações web real-time com Node.js Nota: 5 de 5 estrelas5/5ECMAScript 6: Entre de cabeça no futuro do JavaScript Nota: 5 de 5 estrelas5/5Programação Funcional: Uma introdução em Clojure Nota: 4 de 5 estrelas4/5Machine Learning: Introdução à classificação Nota: 0 de 5 estrelas0 notasIntrodução a Data Science: Algoritmos de Machine Learning e métodos de análise Nota: 0 de 5 estrelas0 notasDjango de A a Z: Crie aplicações web rápidas, seguras e escaláveis com Python Nota: 0 de 5 estrelas0 notasTest-Driven Development: Teste e Design no Mundo Real Nota: 0 de 5 estrelas0 notasNoSQL: Como armazenar os dados de uma aplicação moderna Nota: 0 de 5 estrelas0 notasGraphQL: A revolucionária linguagem de consulta e manipulação de dados para APIs Nota: 0 de 5 estrelas0 notasAprenda a programar com Python: Descomplicando o desenvolvimento de software Nota: 5 de 5 estrelas5/5DevOps na prática: Entrega de software confiável e automatizada Nota: 0 de 5 estrelas0 notasPandas Python: Data Wrangling para Ciência de Dados Nota: 0 de 5 estrelas0 notasBig Data: Técnicas e tecnologias para extração de valor dos dados Nota: 4 de 5 estrelas4/5Kotlin com Android: Crie aplicativos de maneira fácil e divertida Nota: 4 de 5 estrelas4/5Kubernetes: Tudo sobre orquestração de contêineres Nota: 5 de 5 estrelas5/5Deixe seu código limpo e brilhante: Desmistificando Clean Code com Java e Python Nota: 0 de 5 estrelas0 notasConstruindo APIs REST com Node.js: Caio Ribeiro Pereira Nota: 5 de 5 estrelas5/5Desenvolvimento web com PHP e MySQL Nota: 3 de 5 estrelas3/5Guia Front-End: O caminho das pedras para ser um dev Front-End Nota: 5 de 5 estrelas5/5Algoritmos em Java: Busca, ordenação e análise Nota: 5 de 5 estrelas5/5Python De A A Z Nota: 0 de 5 estrelas0 notasFragmentos de um programador: Artigos e insights da carreira de um profissional Nota: 5 de 5 estrelas5/5Guia do mestre programador: Pensando como pirata, evoluindo como jedi Nota: 3 de 5 estrelas3/5Roadmap back-end: Conhecendo o protocolo HTTP e arquiteturas REST Nota: 5 de 5 estrelas5/5Descomplicando o Docker 2a edição Nota: 0 de 5 estrelas0 notasManual de sobrevivência do novo programador: Dicas pragmáticas para sua evolução profissional Nota: 4 de 5 estrelas4/5Programação funcional em .NET: Explore um novo universo Nota: 0 de 5 estrelas0 notas
Bancos de dados para você
Power Bi Black Belt Nota: 0 de 5 estrelas0 notasBíblia De Programação Python Para Iniciantes Nota: 0 de 5 estrelas0 notasNoSQL: Como armazenar os dados de uma aplicação moderna Nota: 0 de 5 estrelas0 notasProgramando Em Java Com Banco De Dados Nota: 0 de 5 estrelas0 notasApache Lucene: Sistemas de busca com técnicas de Recuperação de Informação Nota: 0 de 5 estrelas0 notasBlockchain: Aplicações no Mundo Real e Compreensão Nota: 0 de 5 estrelas0 notasDesenvolvimento De Software Ii C# Programação Em Camadas Nota: 0 de 5 estrelas0 notasPL/SQL: Domine a linguagem do banco de dados Oracle Nota: 0 de 5 estrelas0 notasLinux Essentials: um guia do sistema operacional Linux para iniciantes Nota: 5 de 5 estrelas5/5O Próximo Nível de Investimento em Criptomoedas Nota: 3 de 5 estrelas3/5Programação Para Internet Nota: 0 de 5 estrelas0 notasE-book LGPD Ninja 2ª edição: Entendendo e implementando a LGPD na Empresa Nota: 0 de 5 estrelas0 notasDesbravando o Mundo do SQL : Um Guia Prático para DBAs Iniciantes Nota: 0 de 5 estrelas0 notasPublicadores de dados: da gestão estratégica à abertura Nota: 0 de 5 estrelas0 notasArmazenando dados com Redis Nota: 0 de 5 estrelas0 notasLinguagem De Consulta Estruturada (sql) Nota: 0 de 5 estrelas0 notasFundamentos Do Microsoft Azure Nota: 0 de 5 estrelas0 notasApache Cassandra: Escalabilidade horizontal para aplicações Java Nota: 0 de 5 estrelas0 notasProgress Openedge Nota: 0 de 5 estrelas0 notas
Avaliações de PostgreSQL
1 avaliação0 avaliação
Pré-visualização do livro
PostgreSQL - Vinícius Carvalho
Sumário
ISBN
Prefácio
Agradecimento
Sobre o autor
1. Introdução
2. Comece a desenvolver com o PostgreSQL
3. Nosso primeiro projeto
4. Functions — Agilizando o dia a dia
5. Funções, operadores e operações
6. Banco de dados rápido nos gatilhos
7. Turbinando as consultas com joins e views
8. Administração de banco de dados e outros tópicos
9. Tipos de dados especiais
10. Conclusão
ISBN
Impresso e PDF: 978-85-5519-255-5
EPUB: 978-85-5519-256-2
MOBI: 978-85-5519-257-9
Caso você deseje submeter alguma errata ou sugestão, acesse http://erratas.casadocodigo.com.br.
Prefácio
Escrevendo o livro que eu gostaria de ler
Eu sempre consumi muitos livros de desenvolvimento de software brasileiros. Antes de conhecer a Casa do Código, eu tinha uma grande frustração com os livros dedicados ao desenvolvimento de software em português, e até mesmo com alguns internacionais.
Se você já leu algum livro da Casa do Código, ele é diferente desde a capa e todo seu conteúdo. Tem uma abordagem mais moderna e menos ortodoxa do que os outros livros possuem. Na minha opinião, livros da área de desenvolvimento de software deveriam ter essa pegada mais leve e gostosa de ler.
E o que me levou a escrever meu primeiro livro, lançado em 2015 pela Casa do Código, foi a vontade de criar um que eu gostaria de ler. Isso quer dizer, com um conteúdo prático, para que o(a) leitor(a) pudesse se desenvolver nível a nível sem se frustrar com o que estivesse começando a aprender — e o mais importante, na minha opinião: com cenários e problemas comuns do dia a dia do desenvolvedor.
Este livro é para quem está começando a se aventurar no maravilhoso mundo do desenvolvimento de software e quer começar a trabalhar com um banco de dados. Este livro é para quem já conhece SQL e quer se aperfeiçoar na utilização de um gerenciador de banco de dados. Este livro também é para quem conhece o PostgreSQL e quer construir um projeto utilizando-o.
Do começo ao fim, vamos desenvolver um projeto que pode ser aplicado na prática. Em cada exemplo, busquei aplicar problemas comuns do dia a dia de uma pessoa desenvolvedora.
Código-fonte
O código-fonte de todos os códigos gerados durante o nosso projeto neste livro estão disponíveis em meu repositório no GitHub. Lá você vai encontrá-los separados por capítulos.
https://github.com/viniciuscdes/postgresql_codigos
Envie seu feedback
Feedback é muito importante para todos os profissionais. Após lançar meu primeiro livro, tive muitos feedbacks positivos e muitos que trouxeram oportunidades de melhoria que pude aplicar neste meu segundo livro.
Será um imenso prazer para mim saber o que você tem a dizer sobre este meu trabalho. Você pode enviar sua dúvida ou feedback para o e-mail a seguir:
Se preferir, pode acessar meu site pessoal também. Lá você encontrará todas as minhas redes sociais e contatos.
https://www.viniciuscdes.com
Agradecimento
Quando lancei meu primeiro livro, uma das primeiras coisas que eu fiz foi ir até a faculdade na qual me formei para doá-lo à biblioteca da instituição através das mãos de uma professora, a qual também foi minha orientadora. Este ato singelo foi um pequeno gesto para demonstrar a minha gratidão por aqueles que se dedicam a compartilhar seu conhecimento todos os dias com centenas de pessoas durante todos os anos de sua vida: os professores.
Desde o primeiro dia que entrei na faculdade, sempre tive em minha mente que os melhores amigos que eu poderia fazer seriam os professores. Isso porque sabia que eles estavam dispostos a ensinar todos os dias e, de vez em quando, eu também conseguia compartilhar o que eu sabia e também ensiná-los. Durante a minha faculdade, sempre busquei essa troca de conhecimento que aquele ambiente nos proporciona.
Com os professores, desde pequeno, aprendi que compartilhar conhecimento nunca é demais. E cada vez que você compartilha algo, você aprende muito mais. Eu sempre fui inquieto, e me perguntei: como estou compartilhando o que aprendi durante todos esses anos, e como eu vou deixar para as outras pessoas esse conhecimento? Foi então que surgiu a grande vontade de escrever um livro.
Então, dedico este livro a todos os professores e professoras que eu tive durante todos esses anos de vida. Acredito que uma das grandes realizações de um(a) professor(a) é saber como estão os alunos e alunas que passaram por suas turmas. Ser professor é algo, muitas vezes, estressante. É uma dedicação diária em tentar fazer a diferença em uma sala de aula.
Só gostaria de deixar registrado que vocês fizeram a diferença em minha vida. Sempre que encontro um(a) professor(a) antigo(a), tento passar essa mensagem. Creio que sirva de incentivo para que eles e elas continuem se dedicando e para mostrar que o trabalho que eles desenvolvem não é em vão.
Gostaria de agradecer aos meus primeiros professores: minha mãe, Juraci, meu pai, Nelson, e meus irmãos, Anderson, Judson e Nelson Jr. Além de serem professores das minhas primeiras palavras, são os de meu caráter.
Gostaria de agradecer à minha esposa, Thais, pelo incentivo em todos os meus projetos.
E gostaria de agradecer e também dedicar esse livro à pessoa mais importante na minha vida, a minha filha, Maia, que, desde o seu nascimento, me ensina muitas coisas e me faz buscar o meu melhor a cada dia. O papai te ama!
Sobre o autor
Vinícius Carvalho teve seu primeiro contato com o computador em um curso de MS-DOS com Windows 95 e, desde então, apaixonou-se pela computação. Ao longo da adolescência, procurou aperfeiçoar-se e fazer alguns cursos até chegar a hora de escolher sua formação na faculdade. Essa parte foi fácil! Formou-se em Sistemas de Informações, pós graduou-se em Engenharia de Software e não parou de aprender coisas novas.
Entusiasta da busca pelo conhecimento, procura manter-se atualizado nas tendências de desenvolvimento de software e tecnologia e tem como meta aprender algo novo todos os dias. Tecnologista, é apaixonado por tecnologia e solução de problemas através do desenvolvimento de software e construção de produtos. Atua na área de tecnologia da informação desde 2010 e, nesse período, exerceu diferentes funções, como Desenvolvedor, Analista de Negócios, Gerente de Produto, Product Owner, Scrum Master e Gerente de Projetos.
Sempre em busca da melhoria contínua e de compartilhar conhecimento com a comunidade, buscando contribuir através de palestras e voluntariado em eventos de tecnologia. Tem o foco de seus estudos em métodos e metodologias ágeis e engenharia de dados. Lançou seu primeiro livro em 2015, MySQL: Comece com o principal banco de dados open source do mercado, que você pode encontrar em: https://www.casadocodigo.com.br/products/livro-banco-mysql. Sua página pessoal é https://www.viniciuscdes.com. Lá você pode conferir outras informações.
Capítulo 1
Introdução
Toda empresa precisa de gente que erra, que não tem medo de errar e que aprenda com o erro.
— Bill Gates
1.1 Banco de dados
Tecnologias de banco de dados dão suporte diário para operações e tomadas de decisões nos mais diversos níveis da empresa, da operação à gerência. Eles são vitais para as organizações modernas que querem se manter competitivas no mercado e no cenário atual de extrema concorrência.
Diariamente, geramos milhões de dados. A todo o tempo que estamos interagindo com um aplicativo no celular ou uma página na web, estamos gerando dados. Os dados se tornaram o bem mais valioso para uma empresa. Dizem que eles são o novo petróleo
. São a matéria-prima para a inovação. O entendimento dos dados de uma empresa é crucial para a formulação de consultas e perguntas para o negócio. Entretanto, poucas empresas estão tirando proveito das informações que elas possuem em seus bancos de dados e transformando isso em inteligência de negócio, devido a pouco conhecimento da gerência ou por não possuírem ferramentas necessárias.
Quando digo dados, estou querendo dizer todos os registros gravados em um banco de dados da empresa, seja esse banco conectado a um ERP, CRM, website, aplicativo de celular etc. A análise e uma boa administração desses dados são vitais para o negócio e tomadas de decisões dentro de uma organização. Volto a frisar a importância de ter uma boa ferramenta para administrar esse bem tão precioso da empresa. E será essa ferramenta para fazer a administração de seus dados que veremos neste livro: o PostgreSQL.
Princípios de um SGBD relacional
Se você enviou um e-mail hoje, escreveu um post no Facebook ou no Twitter, ou enviou uma mensagem de celular, essas informações que você publicou ficaram lá armazenadas. E esse armazenamento é feito em um banco de dados.
Estamos conectados a diversos bancos de dados diariamente. Eles estão no computador, no celular, no tablet, no videogame e em até em alguns eletrodomésticos como algumas geladeiras modernas que salvam listas de compras.
Os bancos de dados gerenciam de forma automatizada os dados lá armazenados. Eles são conhecidos como Sistemas Gerenciadores de Banco de Dados Relacional (SGBDR), ou apenas Sistemas Gerenciadores de Banco de Dados (SGBD). O modelo de banco de dados relacional é o mais usado, principalmente por sua capacidade de manter a integridade dos dados quando existe alteração nas estruturas das tabelas. Isso porque seus mecanismos que interligam as tabelas relacionadas fazem com que seja muito seguro o trabalho com um SGBD relacional. Veremos esses mecanismos no decorrer do livro.
O conceito básico de SGBD relacional é um conjunto de tabelas relacionadas, e estas são compostas por alguns elementos básicos: colunas, linhas e campos. Além desses elementos, o SGBD possui outros que também serão apresentados aqui. Cada um deles será demonstrado e analisado, não se preocupe em conhecê-los agora.
Importância do banco de dados no projeto de construção de software
Os dados de uma empresa, se não forem o elemento mais precioso, estão entre eles. Uma informação armazenada incorretamente, ou de forma desordenada, pode custar todo o negócio. Sabendo disso, não tenha medo de desenhar esquemas, testar os esquemas das tabelas, trocar opiniões com outras pessoas desenvolvedoras na hora de modelar um banco de dados.
Realizar uma manutenção na estrutura de suas tabelas após o sistema em produção é um custo muito caro para o projeto. Além de ter um impacto na ocupação do tempo dos programadores, caso você esteja modelando o banco, custará o seu tempo de retrabalho, como também pode ter um impacto diretamente em seus usuários, podendo gerar muita reclamação ou o encerramento do seu projeto.
Sempre que tenho a oportunidade de falar sobre projetos de software, principalmente sobre a construção de banco de dados, deixo muito claro que essa etapa dirá muito sobre a qualidade do seu sistema no futuro. É claro, conforme o seu sistema vai crescendo, pode surgir a necessidade de fazer alterações em algumas estruturas, mas se a modelagem for feita pensando em um cenário escalável, suas chances de sucesso vão aumentar consideravelmente.
1.2 PostgreSQL
O PostgreSQL é um poderoso sistema gerenciador de banco de dados objeto-relacional de código aberto. Por muito tempo, foi descriminado no mundo dos bancos de dados, e o seu recente aumento de popularidade veio de usuários de outros bancos de dados em busca de um sistema com melhores garantias de confiabilidade, melhores recursos de consulta, mais operação previsível, ou simplesmente querendo algo mais fácil de aprender, entender e usar. Você encontrará no PostgreSQL todas essas coisas citadas e muito mais.
Com mais