Este documento discute o PostgreSQL, incluindo sua instalação, definição de dados, manipulação de dados e funções. Aborda tópicos como criação de bancos de dados, esquemas, tabelas e campos, além de consultas, funções internas e triggers.
O documento discute a história e conceitos básicos de banco de dados. Explica como os humanos sempre registraram eventos e como os sistemas evoluíram de arquivos para bancos de dados relacionais gerenciados por SGBDs. Também define termos-chave como dados, informações, esquema e instância de banco de dados.
Curso introdutório de ReactJS.
ReactJS é uma ferramente de desenvolvimento Web criada pelo Facebook.
No curso abordaremos uma abordagem introdutória ao assunto, explorando o básico para desenvolver um site somente com front-end
O documento descreve as quatro principais arquiteturas de Sistemas Gerenciadores de Banco de Dados (SGBD): arquitetura stand-alone, centralizada, cliente-servidor e distribuída. A arquitetura stand-alone envolve um único computador, a centralizada um computador central, a cliente-servidor separa o front-end e back-end e a distribuída distribui os dados e processamento por vários servidores.
O documento descreve comandos do MS-DOS para gerenciar arquivos, diretórios e configurações do sistema como ipconfig, netstat, ping e shutdown. Inclui explicações sobre formatação e recuperação de dados, além de comandos para copiar, mover, renomear arquivos.
O documento descreve as principais propriedades e conceitos de CSS, incluindo: 1) CSS é usado para definir a formatação e estilo de elementos HTML; 2) CSS permite separar a estrutura do conteúdo da página da sua apresentação visual; 3) As regras CSS são compostas por seletores e declarações que definem os estilos dos elementos selecionados.
O documento introduz os principais conceitos de banco de dados, incluindo: 1) Banco de dados armazena dados em estrutura regular para produzir informações; 2) SGBD gerencia o banco de dados retirando responsabilidades da aplicação; 3) Modelo relacional armazena dados em tabelas e relaciona entidades através de chaves estrangeiras.
Este documento discute o PostgreSQL, incluindo sua instalação, definição de dados, manipulação de dados e funções. Aborda tópicos como criação de bancos de dados, esquemas, tabelas e campos, além de consultas, funções internas e triggers.
O documento discute a história e conceitos básicos de banco de dados. Explica como os humanos sempre registraram eventos e como os sistemas evoluíram de arquivos para bancos de dados relacionais gerenciados por SGBDs. Também define termos-chave como dados, informações, esquema e instância de banco de dados.
Curso introdutório de ReactJS.
ReactJS é uma ferramente de desenvolvimento Web criada pelo Facebook.
No curso abordaremos uma abordagem introdutória ao assunto, explorando o básico para desenvolver um site somente com front-end
O documento descreve as quatro principais arquiteturas de Sistemas Gerenciadores de Banco de Dados (SGBD): arquitetura stand-alone, centralizada, cliente-servidor e distribuída. A arquitetura stand-alone envolve um único computador, a centralizada um computador central, a cliente-servidor separa o front-end e back-end e a distribuída distribui os dados e processamento por vários servidores.
O documento descreve comandos do MS-DOS para gerenciar arquivos, diretórios e configurações do sistema como ipconfig, netstat, ping e shutdown. Inclui explicações sobre formatação e recuperação de dados, além de comandos para copiar, mover, renomear arquivos.
O documento descreve as principais propriedades e conceitos de CSS, incluindo: 1) CSS é usado para definir a formatação e estilo de elementos HTML; 2) CSS permite separar a estrutura do conteúdo da página da sua apresentação visual; 3) As regras CSS são compostas por seletores e declarações que definem os estilos dos elementos selecionados.
O documento introduz os principais conceitos de banco de dados, incluindo: 1) Banco de dados armazena dados em estrutura regular para produzir informações; 2) SGBD gerencia o banco de dados retirando responsabilidades da aplicação; 3) Modelo relacional armazena dados em tabelas e relaciona entidades através de chaves estrangeiras.
O documento apresenta os principais conceitos e comandos do sistema de gerenciamento de banco de dados MySQL. Ele explica o que é SQL, como instalar o MySQL e os principais grupos de comandos - DML, DDL e DCL. Além disso, demonstra comandos básicos como criar e manipular bancos de dados e tabelas, inserir, consultar e alterar dados.
O documento discute a computação para dispositivos móveis, incluindo uma breve história dos dispositivos móveis e celulares, os principais desafios da mobilidade, as principais linguagens de programação usadas e linguagens cross-platform.
O documento discute o conceito de herança em programação orientada a objetos. Explica que a herança permite a reutilização de código através da criação de novas subclasses que herdam atributos e métodos de classes existentes (superclasses), permitindo economia de tempo no desenvolvimento de software. Detalha os conceitos de superclasse, subclasses, hierarquia de classes e relacionamentos entre classes, como herança simples e múltipla.
O documento apresenta uma introdução sobre dados, informação e banco de dados. Explica que dados representam entidades enquanto informação é um conjunto de dados associados a um contexto. Também descreve os principais componentes de um sistema de banco de dados, como a base de dados, o gerenciador de banco de dados e suas linguagens.
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
O documento discute os conceitos fundamentais da orientação a objetos, incluindo classes, objetos, atributos, métodos e relacionamentos entre objetos. Explica que uma classe define os atributos e métodos comuns a objetos do mesmo tipo e que objetos são instâncias de classes que possuem estados e comportamentos próprios. Também aborda como objetos se comunicam através de mensagens e como classes podem ser relacionadas por agregação, composição ou herança.
O documento discute a história e conceitos-chave de bancos de dados. Aborda a evolução dos bancos de dados desde os anos 1960, com o surgimento de modelos hierárquicos e relacionais. Também define termos como dados, informações, metadados e transações. Explica os principais tipos de bancos de dados e sistemas gerenciadores de banco de dados.
O documento apresenta uma lista de exercícios sobre banco de dados, incluindo: 1) definição de SGBD e exemplos; 2) vantagens de banco de dados em relação a sistemas tradicionais; 3) problemas que dificultariam o uso de banco de dados; 4) perfis de pessoas envolvidas em projetos de banco de dados; 5) definição de modelo lógico de dados; 6) definição de esquema e instância de banco de dados.
O documento descreve os princípios e métodos ágeis de desenvolvimento de software. Apresenta o Manifesto Ágil de 2001, que valoriza indivíduos, software funcional, colaboração com clientes e resposta à mudança. Também discute exemplos de métodos ágeis como SCRUM, XP, FDD e DSDM.
O documento discute os processos de engenharia de requisitos para software, incluindo a definição de requisitos funcionais e não funcionais. Apresenta os tipos de requisitos como requisitos de usuário, sistema e especificação de software. Também discute representações estruturadas de requisitos e linhas guias para elaboração de requisitos.
O documento discute a prototipagem, que envolve o desenvolvimento de protótipos com base em requisitos não bem definidos para melhorar a qualidade dos requisitos. O protótipo é refinado através de feedback dos stakeholders até que os requisitos estejam finalizados. Prototipagem pode ser evolucionária, com um sistema funcionando evoluindo com base em feedback, ou descartável, onde o protótipo é descartado após avaliação inicial dos requisitos.
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...Leinylson Fontinele
Este documento apresenta uma aula prática sobre a conversão de um modelo conceitual para um modelo lógico de banco de dados. O documento introduz a ferramenta brModelo e ensina como mapear entidades e relacionamentos de um modelo conceitual para o modelo lógico relacional.
1) O documento discute a Arquitetura Orientada a Serviços (SOA), definindo-a como uma abordagem arquitetural que permite criar serviços genéricos e interoperáveis que podem ser reutilizados por diferentes aplicações.
2) SOA divide os recursos de TI em módulos menores chamados serviços que se comunicam através de interfaces padronizadas para integrar sistemas e processos de negócio.
3) A adoção de SOA possibilita a criação de aplicações compostas e dinâmicas que forne
1. O documento discute os conceitos fundamentais de bancos de dados, incluindo o que é um banco de dados, operações comuns, tipos de sistemas de banco de dados, e componentes como SGBD e usuários.
2. A arquitetura de banco de dados é explicada, com os níveis internos, conceituais e externos, mapeamentos entre eles e o papel do SGBD.
3. O modelo de entidade-relacionamento é introduzido como um modelo de dados conceitual para descrever dados e relações por me
O documento discute os principais conceitos de banco de dados, incluindo: 1) Introdução aos bancos de dados, sua finalidade e tipos; 2) Modelagem e arquitetura de bancos de dados; 3) Linguagem SQL e desenvolvimento de projetos.
O documento apresenta um resumo sobre modelagem, projeto e gestão de banco de dados. Aborda conceitos como dados, informação e conhecimento, além de sistemas de gerenciamento de arquivos e bancos de dados. Também explica os modelos de dados, profissões relacionadas, arquiteturas de sistemas de banco de dados e ferramentas como o MySQL.
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeiraNatanael Simões
Modelo lógico é a evolução do modelo conceitual (não como um substituto, mas o caminho natural a percorrer por quem irá construir o banco de dados). Neste modelo encontramos os mesmos elementos do modelo conceitual apresentados de forma diferente, com significado mais apurado. Neste contexto apresentamos as chaves primária e estrangeira que são de grande valia para a criação dos relacionais de uma forma mais concreta.
Devido ao aumento da quantidade de dados, começaram a surgir demandas de escalabilidade e a necessidade de se trabalhar com dados de forma mais flexível do que as regras do modelo relacional. Em 2009, surgiu o termo NoSQL. Este novo modelo, faz referência a várias soluções desenvolvidas que caracterizam-se por ter esquema flexível, executar de forma distribuída e geralmente possuir o código aberto.
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Leinylson Fontinele
O documento apresenta os conceitos fundamentais de modelagem de dados, incluindo: (1) a definição de modelagem de dados como o processo de organizar os dados de acordo com as necessidades dos usuários; (2) os três modelos comuns de modelagem - modelo conceitual, lógico e físico; (3) os componentes do modelo conceitual de entidade-relacionamento (MER), incluindo entidades, atributos e relacionamentos.
1. O documento apresenta uma agenda de um curso sobre bancos de dados na nuvem e NoSQL, abordando conceitos históricos, tipos de bancos de dados NoSQL e suas características.
2. Os bancos de dados NoSQL surgiram para atender às necessidades de escalabilidade em clusters e armazenamento flexível de dados, sendo alternativas aos bancos de dados relacionais.
3. Existem diferentes tipos de bancos de dados NoSQL, como chave-valor, documentos e colunas, cada um com características e aplic
Este documento apresenta os objetivos e conceitos básicos da disciplina de Análise e Projeto de Sistemas. Os principais pontos abordados são: introduzir os conceitos de análise e modelagem de sistemas e sua importância para projetos de software, apresentar parâmetros para escolha da técnica adequada para cada projeto, e capacitar os alunos a elaborar projetos detalhados de sistemas usando técnicas como UML.
Curso de PostgreSQL: Um pouco Além dos ComandosMarcos Thomaz
O documento apresenta uma introdução ao PostgreSQL, abordando seu breve histórico, uso no Brasil, recursos como subconsultas e linguagens procedurais, ambientes de gerenciamento, criação de bancos de dados e usuários, tipos de dados, criação de tabelas, inserção de dados, remoção de registros, busca de registros e exercícios de fixação.
O documento discute diferentes modelos de bancos de dados e sistemas de gerenciamento de bancos de dados (SGBDs), incluindo MySQL, Oracle, Microsoft SQL Server e PostgreSQL. Ele fornece detalhes sobre as características e funcionalidades de cada um.
O documento apresenta os principais conceitos e comandos do sistema de gerenciamento de banco de dados MySQL. Ele explica o que é SQL, como instalar o MySQL e os principais grupos de comandos - DML, DDL e DCL. Além disso, demonstra comandos básicos como criar e manipular bancos de dados e tabelas, inserir, consultar e alterar dados.
O documento discute a computação para dispositivos móveis, incluindo uma breve história dos dispositivos móveis e celulares, os principais desafios da mobilidade, as principais linguagens de programação usadas e linguagens cross-platform.
O documento discute o conceito de herança em programação orientada a objetos. Explica que a herança permite a reutilização de código através da criação de novas subclasses que herdam atributos e métodos de classes existentes (superclasses), permitindo economia de tempo no desenvolvimento de software. Detalha os conceitos de superclasse, subclasses, hierarquia de classes e relacionamentos entre classes, como herança simples e múltipla.
O documento apresenta uma introdução sobre dados, informação e banco de dados. Explica que dados representam entidades enquanto informação é um conjunto de dados associados a um contexto. Também descreve os principais componentes de um sistema de banco de dados, como a base de dados, o gerenciador de banco de dados e suas linguagens.
Aula 02 - Principios da Orientação a Objetos (POO)Daniel Brandão
O documento discute os conceitos fundamentais da orientação a objetos, incluindo classes, objetos, atributos, métodos e relacionamentos entre objetos. Explica que uma classe define os atributos e métodos comuns a objetos do mesmo tipo e que objetos são instâncias de classes que possuem estados e comportamentos próprios. Também aborda como objetos se comunicam através de mensagens e como classes podem ser relacionadas por agregação, composição ou herança.
O documento discute a história e conceitos-chave de bancos de dados. Aborda a evolução dos bancos de dados desde os anos 1960, com o surgimento de modelos hierárquicos e relacionais. Também define termos como dados, informações, metadados e transações. Explica os principais tipos de bancos de dados e sistemas gerenciadores de banco de dados.
O documento apresenta uma lista de exercícios sobre banco de dados, incluindo: 1) definição de SGBD e exemplos; 2) vantagens de banco de dados em relação a sistemas tradicionais; 3) problemas que dificultariam o uso de banco de dados; 4) perfis de pessoas envolvidas em projetos de banco de dados; 5) definição de modelo lógico de dados; 6) definição de esquema e instância de banco de dados.
O documento descreve os princípios e métodos ágeis de desenvolvimento de software. Apresenta o Manifesto Ágil de 2001, que valoriza indivíduos, software funcional, colaboração com clientes e resposta à mudança. Também discute exemplos de métodos ágeis como SCRUM, XP, FDD e DSDM.
O documento discute os processos de engenharia de requisitos para software, incluindo a definição de requisitos funcionais e não funcionais. Apresenta os tipos de requisitos como requisitos de usuário, sistema e especificação de software. Também discute representações estruturadas de requisitos e linhas guias para elaboração de requisitos.
O documento discute a prototipagem, que envolve o desenvolvimento de protótipos com base em requisitos não bem definidos para melhorar a qualidade dos requisitos. O protótipo é refinado através de feedback dos stakeholders até que os requisitos estejam finalizados. Prototipagem pode ser evolucionária, com um sistema funcionando evoluindo com base em feedback, ou descartável, onde o protótipo é descartado após avaliação inicial dos requisitos.
Banco de Dados II Aula Prática 1 (Conversão do modelo conceitual para modelo ...Leinylson Fontinele
Este documento apresenta uma aula prática sobre a conversão de um modelo conceitual para um modelo lógico de banco de dados. O documento introduz a ferramenta brModelo e ensina como mapear entidades e relacionamentos de um modelo conceitual para o modelo lógico relacional.
1) O documento discute a Arquitetura Orientada a Serviços (SOA), definindo-a como uma abordagem arquitetural que permite criar serviços genéricos e interoperáveis que podem ser reutilizados por diferentes aplicações.
2) SOA divide os recursos de TI em módulos menores chamados serviços que se comunicam através de interfaces padronizadas para integrar sistemas e processos de negócio.
3) A adoção de SOA possibilita a criação de aplicações compostas e dinâmicas que forne
1. O documento discute os conceitos fundamentais de bancos de dados, incluindo o que é um banco de dados, operações comuns, tipos de sistemas de banco de dados, e componentes como SGBD e usuários.
2. A arquitetura de banco de dados é explicada, com os níveis internos, conceituais e externos, mapeamentos entre eles e o papel do SGBD.
3. O modelo de entidade-relacionamento é introduzido como um modelo de dados conceitual para descrever dados e relações por me
O documento discute os principais conceitos de banco de dados, incluindo: 1) Introdução aos bancos de dados, sua finalidade e tipos; 2) Modelagem e arquitetura de bancos de dados; 3) Linguagem SQL e desenvolvimento de projetos.
O documento apresenta um resumo sobre modelagem, projeto e gestão de banco de dados. Aborda conceitos como dados, informação e conhecimento, além de sistemas de gerenciamento de arquivos e bancos de dados. Também explica os modelos de dados, profissões relacionadas, arquiteturas de sistemas de banco de dados e ferramentas como o MySQL.
Banco de Dados - Modelo Lógico, Chave primária e Chave estrangeiraNatanael Simões
Modelo lógico é a evolução do modelo conceitual (não como um substituto, mas o caminho natural a percorrer por quem irá construir o banco de dados). Neste modelo encontramos os mesmos elementos do modelo conceitual apresentados de forma diferente, com significado mais apurado. Neste contexto apresentamos as chaves primária e estrangeira que são de grande valia para a criação dos relacionais de uma forma mais concreta.
Devido ao aumento da quantidade de dados, começaram a surgir demandas de escalabilidade e a necessidade de se trabalhar com dados de forma mais flexível do que as regras do modelo relacional. Em 2009, surgiu o termo NoSQL. Este novo modelo, faz referência a várias soluções desenvolvidas que caracterizam-se por ter esquema flexível, executar de forma distribuída e geralmente possuir o código aberto.
Banco de Dados II Aula 02 - Modelagem de Dados (Definição, Modelo conceitual)Leinylson Fontinele
O documento apresenta os conceitos fundamentais de modelagem de dados, incluindo: (1) a definição de modelagem de dados como o processo de organizar os dados de acordo com as necessidades dos usuários; (2) os três modelos comuns de modelagem - modelo conceitual, lógico e físico; (3) os componentes do modelo conceitual de entidade-relacionamento (MER), incluindo entidades, atributos e relacionamentos.
1. O documento apresenta uma agenda de um curso sobre bancos de dados na nuvem e NoSQL, abordando conceitos históricos, tipos de bancos de dados NoSQL e suas características.
2. Os bancos de dados NoSQL surgiram para atender às necessidades de escalabilidade em clusters e armazenamento flexível de dados, sendo alternativas aos bancos de dados relacionais.
3. Existem diferentes tipos de bancos de dados NoSQL, como chave-valor, documentos e colunas, cada um com características e aplic
Este documento apresenta os objetivos e conceitos básicos da disciplina de Análise e Projeto de Sistemas. Os principais pontos abordados são: introduzir os conceitos de análise e modelagem de sistemas e sua importância para projetos de software, apresentar parâmetros para escolha da técnica adequada para cada projeto, e capacitar os alunos a elaborar projetos detalhados de sistemas usando técnicas como UML.
Curso de PostgreSQL: Um pouco Além dos ComandosMarcos Thomaz
O documento apresenta uma introdução ao PostgreSQL, abordando seu breve histórico, uso no Brasil, recursos como subconsultas e linguagens procedurais, ambientes de gerenciamento, criação de bancos de dados e usuários, tipos de dados, criação de tabelas, inserção de dados, remoção de registros, busca de registros e exercícios de fixação.
O documento discute diferentes modelos de bancos de dados e sistemas de gerenciamento de bancos de dados (SGBDs), incluindo MySQL, Oracle, Microsoft SQL Server e PostgreSQL. Ele fornece detalhes sobre as características e funcionalidades de cada um.
PostgreSQL es un sistema de gestión de bases de datos objeto-relacional libre y de código abierto muy avanzado. Tiene una larga historia de desarrollo desde 1977 y actualmente tiene un gran equipo de desarrolladores. Ofrece características potentes como transacciones ACID, tipos de datos extendidos, y alta escalabilidad, siendo utilizado por empresas como Sony, Cisco y universidades.
PostgreSQL: O melhor banco de dados Universoelliando dias
PostgreSQL é um sistema gerenciador de banco de dados de código aberto desenvolvido na década de 1980. Ele suporta vários sistemas operacionais e plataformas, oferece alta escalabilidade, disponibilidade e desempenho, e é utilizado por grandes empresas como a NASA, Apple, Cisco e Yahoo. PostgreSQL tem licença BSD e pode ser modificado e redistribuído livremente.
Criação de log de ações através do banco - PostgreSQLMarcos Thomaz
O documento descreve como criar logs de ações através do banco de dados PostgreSQL. Ele discute como criar triggers e functions para registrar automaticamente inserções, alterações e exclusões em tabelas, armazenando as informações em uma tabela de log central. O documento também aborda como lidar com problemas como gerar logs para múltiplas tabelas e armazenar valores antigos e novos em casos de atualização.
Antes era uma extensão do Postgres, incorporada ao core desde a versão 8.3, FTS (Full Text Search) é um recurso que agiliza e dá maior precisão em buscas textuais. Nesta apresentação serão mostradas de forma resumida, formas e exemplos de aplicação deste recurso.
O documento apresenta uma introdução ao banco de dados PostgreSQL, cobrindo sua instalação, configuração, controle de acesso, definição e manipulação de dados, transações, visualizações e funções. Ele destaca que o PostgreSQL é um SGBD robusto, gratuito e de código aberto, disponível para vários sistemas operacionais e adequado para uso corporativo e doméstico.
Uma breve apresentação sobre este fantástico Sistema Gerenciador de Banco de Dados Objeto-Relacional.
Razões para adotá-lo, curiosidades e características.
1. O documento apresenta 12 exemplos de blocos e funções PL/SQL para realizar diferentes tarefas, como imprimir tabuadas, verificar anos bissextos, calcular médias, consultar dados em tabelas e realizar conversões.
Este documento presenta una breve historia de PostgreSQL. Originalmente llamado Postgres, fue creado por Michael Stonebraker en 1986 como un proyecto de seguimiento a su predecesor Ingres. PostgreSQL se ha convertido en una de las bases de datos de código abierto más populares y confiables, utilizada por muchas grandes empresas y organizaciones.
MySQL e Oracle Database 11g complementam-se mutuamente. São produtos com histórias distintas e concebidos para adequar-se a diferentes casos de uso. Na verdade, muitos clientes da Oracle Database 11g já usam o MySQL. Nesta apresentação vamos explorar algumas das principais diferenças entre os dois SGBDs do ponto de vista de desenvolvedores, visitar alguns casos de uso e entender como utilizar o MySQL de maneira eficiente para complementar a camada de banco de dados.
Este documento describe cómo usar el software Netemul para simular redes de clase A, B y C. Explica que Netemul permite conectar dispositivos de red como ordenadores, switches y routers para enviar tráfico de datos UDP y TCP. Luego, detalla un ejercicio práctico para conectar tres redes de diferentes clases a un switch y router, asignarles direcciones IP, y activar el enrutado. Finalmente, concluye que Netemul es una buena herramienta para simular redes y aprender a configurar equipos y routers.
Palestra ministrada no PGDay Curitiba 2016 na CELEPAR.
Nesta palestra demonstro como fazer o PostgreSQL falar conosco criando um bot para o Telegram através de Foreign Data Wrappers.
Mais detalhes em:
- http://guedesoft.net
- http://github.com/guedes/telegram_fdw
O documento descreve o software SoftExpert CPM Suite, que oferece ferramentas para gestão de desempenho corporativo, incluindo a criação de scorecards, dashboards e relatórios. O software permite definir estratégias, medir o progresso em relação às metas, monitorar iniciativas e riscos, e fornecer análises de dados para tomada de decisões.
Este documento fornece uma introdução ao banco de dados PostgreSQL, incluindo:
1) Como criar bancos de dados, esquemas e tabelas, definir tipos de dados e estruturas de tabela.
2) Como inserir, consultar, atualizar e excluir dados de tabelas usando comandos SQL.
3) Conceitos avançados como junções, agrupamentos, subconsultas e visões.
Arquitetura Cliente-Servidor - Banco de dadosIsrael Messias
O documento discute bancos de dados, o MySQL e ferramentas para gerenciamento de bancos de dados. O MySQL é um popular sistema de gerenciamento de banco de dados que usa SQL e é usado por muitas grandes empresas. Ferramentas como o Adminer, HeidiSQL, phpMyAdmin e MySQL Workbench podem ser usadas para criar, gerenciar e sincronizar bancos de dados no MySQL.
Pequena apresentação realizada na Faculdade de Tecnologia e Ciências sobre o Oracle e algumas de suas ferramentas voltadas a segurança. Ministrada pelos discentes: Anderson Castro, Denis Vieira e Francenildo Jesus no dia 21-11-2013, sob orientação do então professor da matéria de análise e segurança de banco de dados - Antonio Carlos Marcelino.
O PostgreSQL é um SGBD objeto-relacional desenvolvido originalmente na Universidade da Califórnia em Berkeley. Suporta diversas linguagens de programação e continua avançando graças a desenvolvedores online. Possui recursos como chaves estrangeiras, gatilhos, visões e suporte a múltiplas transações concorrentes.
O documento descreve as principais novidades da versão 9.0 do PostgreSQL, incluindo:
- Melhorias na alta disponibilidade com Hot Standby e Streaming Replication, permitindo consultas no servidor secundário;
- Mais de 200 melhorias gerais de desempenho e funcionalidade, como administração simplificada de privilégios de usuários.
PostgreSQL é um sistema gerenciador de banco de dados objeto relacional de código aberto desenvolvido na Universidade de Berkeley. É licenciado sob a licença BSD e possui limites de tamanho de dados muito altos. Sua história inclui evoluções do projeto Ingres e lançamentos de novas versões a cada dois anos com melhorias significativas.
O documento discute vários tipos de software geoespacial, incluindo software livre e de código aberto. Apresenta definições de termos como software gratuito, de código aberto e proprietário. Também descreve diversas ferramentas geoespaciais de código aberto como desktop GIS, bibliotecas, bancos de dados espaciais e servidores de mapas.
Desenvolvendo Aplicações com Software Livreelliando dias
O documento descreve um plano de ensino sobre desenvolvimento de aplicações com software livre usando o framework PHP CakePHP. Ele inclui tópicos como licenciamento de software livre, linguagens de programação como PHP e Ruby on Rails, bancos de dados como MySQL e PostgreSQL, orientação a objetos, arquitetura MVC, frameworks, e características e instalação do CakePHP.
O documento descreve a licença, desenvolvimento, módulos, frameworks e aplicações da linguagem de programação Python. Detalha os processos de desenvolvimento como PEPs e gerenciamento de erros, além de frameworks como Django e bibliotecas como Matplotlib. Apresenta também exemplos de uso de Python em grandes organizações e softwares.
1) O documento discute as vantagens do sistema operacional Linux CentOS em relação a outros sistemas, incluindo ser gratuito, seguro e com muitos aplicativos incluídos.
2) CentOS é derivado do Red Hat Enterprise Linux mas é gratuito, fornecendo compatibilidade com pacotes do Red Hat sem custo.
3) O CentOS suporta ambientes de servidores, estações de trabalho, laptops e notebooks.
1) O documento descreve novas características do Apache 2.0, incluindo APR (Apache Portable Run-Time) que melhora a portabilidade, novos filtros que permitem encadear processamento de requisições, e Piped Logs que melhoram o desempenho e gerenciamento de logs.
2) APR melhora a portabilidade do Apache para diferentes plataformas fornecendo uma interface padronizada para chamadas de sistema dependentes da plataforma.
3) Novos filtros permitem que saídas de processamento sejam encadeadas como entrada para outros process
O documento discute diferentes modelos de bancos de dados, incluindo hierárquico, rede, relacional, dedutivo e objeto. Também descreve alguns dos principais sistemas de gerenciamento de bancos de dados como MySQL, Oracle, Microsoft SQL Server e PostgreSQL, comparando suas características e funcionalidades.
O documento apresenta um manual prático sobre PostgreSQL, abordando tópicos como instalação, modelagem de dados, linguagens SQL e PL/pgSQL, administração e ferramentas. O PostgreSQL é introduzido como um SGBD objeto-relacional de código aberto que oferece recursos como transações, views, triggers e suporte a várias linguagens de programação. O autor também resume a história e evolução do PostgreSQL desde seu desenvolvimento na década de 1980.
1) O documento discute os principais tipos de bancos de dados, incluindo SQL, NoSQL e Hadoop.
2) Apresenta os conceitos básicos de bancos de dados, sistemas de gerenciamento de bancos de dados e arquiteturas.
3) Discutem técnicas como map-reduce usadas em bancos de dados NoSQL para manipular grandes volumes de dados.
1) O documento discute bancos de dados SQL, NoSQL e Hadoop, incluindo conceitos, comandos e sistemas de bancos de dados.
2) É apresentada a arquitetura cliente-servidor para sistemas de banco de dados e exemplos de sistemas como MySQL, PostgreSQL e Oracle.
3) São descritos conceitos como atomicidade, consistência, isolamento e durabilidade (ACID) e técnicas como map-reduce usadas em bancos de dados NoSQL.
1. O documento discute técnicas para escalar aplicações React e TypeScript, incluindo estrutura de projetos, boas práticas de código, testes e monitoramento.
2. O autor tem experiência desenvolvendo sites com milhões de visitas diárias e discute como projetos podem crescer rapidamente sem problemas de desempenho ou manutenibilidade.
3. Escalabilidade envolve estruturar o código e projeto para que novos desenvolvedores possam entender facilmente, adicionar novas funcionalidades rapid
O documento discute as principais características e vantagens do sistema operacional CentOS, um clone gratuito do Red Hat Enterprise Linux. Ele destaca que o CentOS oferece a mesma segurança, compatibilidade de pacotes e suporte por meio de atualizações que outras soluções Linux empresariais, sem custo de licença. Além disso, possui uma comunidade ativa e diversos canais de suporte.
Instalando e usando a XPages Extension Library para IBM Designer - extlib (Po...Bruno Grange
O documento apresenta a biblioteca de extensão XPages (extlib) e fornece instruções sobre sua instalação e uso. A extlib fornece controles avançados para desenvolvimento de aplicativos web com XPages, incluindo suporte a dispositivos móveis. O documento descreve como instalar a extlib no cliente e servidor e testá-la usando exemplos como formulários, grids e controles móveis.
Infra de provedores de serviço com software livreIsaque Profeta
1. O documento discute o uso de software livre para infraestrutura de provedores de serviços, incluindo soluções para roteamento, segurança, DNS, servidores web, banco de dados e compartilhamento de arquivos.
2. É apresentada uma lista de softwares livres como Quagga para roteamento BGP, Snort para IPS, Netfilter/Iptables para firewall, BIND para DNS, Apache para web, Wordpress e eGroupware para sistemas web, Sendmail e Qmail para email, MySQL e PostgreSQL para bancos de dados, DHCPD para DHCP, Open
BANCO DE DADOS MONGODB VS BANCO DE DADOS SQL SERVER 2008CharlesAlfenasmg
O documento apresenta os resultados de um estudo comparativo entre os bancos de dados MongoDB e SQL Server 2008. Testes com operações básicas como inserção, consulta, alteração e exclusão foram realizados nos dois bancos usando a mesma quantidade de registros. Os resultados demonstraram que o MongoDB foi mais rápido que o SQL Server para a maioria das operações, especialmente para inserções e exclusões de grandes quantidades de dados.
Artigo: Aplicando recomendações de segurança na instalação do ZabbixAécio Pires
Este documento apresenta um resumo de 3 frases ou menos do artigo "APLICANDO RECOMENDAÇÕES DE SEGURANÇA NA INSTALAÇÃO DO ZABBIX":
O artigo descreve a instalação do software de monitoramento Zabbix aplicando recomendações de segurança para minimizar riscos de ataques. Ele explica os principais serviços adjacentes necessários como Apache, PHP e PostgreSQL e as características e componentes do Zabbix.
Este documento fornece um resumo do software de Business Intelligence (BI) chamado SpagoBI. Ele descreve as principais características do software, incluindo sua arquitetura, módulos, suporte e um caso de uso da Fiat Group Automobiles.
Este documento fornece instruções para instalar e configurar o Nagios, NagiosQL, MySQL e outros plugins relacionados em uma máquina virtual CentOS. Ele abrange a instalação do sistema operacional CentOS, download e compilação dos softwares necessários, configuração do Nagios e plugins, e instalação do NSClient e NagiosQL para permitir monitoramento remoto e interface web.
Atividade letra da música - Espalhe Amor, Anavitória.Mary Alvarenga
A música 'Espalhe Amor', interpretada pela cantora Anavitória é uma celebração do amor e de sua capacidade de transformar e conectar as pessoas. A letra sugere uma reflexão sobre como o amor, quando verdadeiramente compartilhado, pode ultrapassar barreiras alcançando outros corações e provocando mudanças positivas.
Atividades de Inglês e Espanhol para Imprimir - AlfabetinhoMateusTavares54
Quer aprender inglês e espanhol de um jeito divertido? Aqui você encontra atividades legais para imprimir e usar. É só imprimir e começar a brincar enquanto aprende!
2. PostGreSQL PostgreSQL é um sistema gerenciador de banco de dados objeto relacional (SGBDOR), desenvolvido como projeto de código aberto.
3. OPEN SOURCE Foi criado pela OSI (Open Source Initiative) e refere-se a software também conhecido por software livre . Genericamente trata-se de software que respeita as quatro liberdades definidas pela Free Software Foundation. 1ª liberdade: A liberdade de executar o software, para qualquer uso. 2ª liberdade: A liberdade de estudar o funcionamento de um programa e de adaptá-lo às suas necessidades. 3ª liberdade: A liberdade de redistribuir cópias. 4ª liberdade: A liberdade de melhorar o programa e de tornar as modificações públicas de modo que a comunidade inteira beneficie da melhoria. A realização de tais ações é reservada, pelo conceito de direito de autor, aos detentores dos direitos, que necessitam assim de permitir de forma explícita estas liberdades recorrendo a uma licença de software livre .
4. LICENÇAS OPEN SOURCES Algumas licenças: General Public License (Licença Pública Geral): A GPL é a licença com maior utilização por parte de projetos de software livre, em grande parte devido à sua adoção para o projeto GNU e o sistema operacional GNU/Linux. Licença Apache é uma licença para software livre ( open source ) de autoria da Apache Software Foundation (ASF). Todo software produzido pela ASF ou qualquer um dos seus projetos e sub-projetos é licenciado de acordo com os termos da licença Apache. BSD permite que o software distribuído sob a licença, seja incorporado a produtos proprietários. Trabalhos baseados no material podem até ser liberados com licença proprietária. Alguns exemplos notáveis são: o uso de código do BSD (funções de rede de computadores) em produtos da Microsoft, e o uso de muitos componentes do FreeBSD no sistema Mac OS X da Apple Computer.
5. COMPARANDO LICENÇAS GPL BSD Express - Limitação ao tamanho dos dados (máximo 4Gb) - Limitação ao tamanho de memória (máximo 1Gb) Informix -No Maximo um Processador e 2 GB de memória.
6. UM POUCO DA HISTORIA DO POSTGRE Após seu retorno a Berkeley, em 1985, Stonebraker começou um projeto pós-Ingres patrocinado pela DARPA (*Defense Advanced Research Projects Agency) e pelo ARO (Army Research Office) com o objetivo de resolver problemas com o modelo de banco de dados relacional. O PostgreSQL é um dos resultados de uma ampla evolução que se iniciou com o projeto Ingres, desenvolvido na Universidade de Berkeley, Califórnia. O líder do projeto, Michael Stonebraker, um dos pioneiros dos bancos de dados relacionais, deixou a universidade em 1982 para comercializar o Ingres, porém retornou a ela logo em seguida. *Agência de Pesquisas em Projetos Avançados
7. UM POUCO DA HISTORIA DO POSTGRE Estas funcionalidades incluíam a habilidade de definir tipos, mas também a habilidade de descrever relações - as quais até este momento eram amplamente utilizadas, mas completamente mantidas pelo usuário. No Postgres, o banco de dados "compreendia" as relações e podia obter informações de tabelas relacionadas utilizando regras. O principal problema era a incapacidade do modelo relacional compreender “tipos” (atualmente, chamados de objetos), ou seja, combinações de dados simples que formam uma única unidade. O projeto resultante, chamado Postgres, era orientado a introduzir a menor quantidade possível de funcionalidades para completar o suporte a tipos.
8. UM POUCO DA HISTORIA DO POSTGRE As principais características acrescentadas nas versões 6.x são MVCC (Multiversion Concurrency Control – Controle de Concorrência Multiversões), melhorias no SQL e novos tipos de dados nativos (novos tipos de datas e hora e tipos geométricos). Em agosto de 1996, Marc Fournier, Bruce Momjian e Vadim B. Mikheev lançaram a primeira versão externa da Universidade de Berkeley e deram início à tarefa de estabilizar o código herdado. Também em 1996, o projeto foi renomeado para PostgreSQL a fim de refletir a nova linguagem de consulta ao banco de dados: SQL. A primeira versão de PostgreSQL, a 6.0, foi liberada em janeiro de 1997. Desde então, um grupo de desenvolvedores e de voluntários de todo o mundo, coordenados pela Internet, têm mantido o software e desenvolvido novas funcionalidades.
9. UM POUCO DA HISTORIA DO POSTGRE A versão 8.0 foi lançada em janeiro de 2005 e entre outras novidades, foi a primeira a ter suporte nativo para Microsoft Windows (tradicionalmente, o PostgreSQL só rodava de forma nativa em sistemas Unix e, em sistemas Windows - através da biblioteca Cygwin). Dentre as muitas novidades da versão 8.x, pode-se destacar o suporte a tablespaces, savepoints, point-in-time recovery, roles e Two-Phase Commit (2PC). Em julho de 2009 foi lançada a versão mais recente: 8.4. Em maio de 2000 foi liberada a versão 7.0. As versões 7.x trouxeram as seguintes novas funcionalidades: Write-Ahead Log (WAL), esquemas SQL, outer joins, suporte a IPv6, indexação por texto, suporte melhorado a SSL e informações estatísticas do banco de dados. Em um sistema usando WAL, todas as modificações são gravadas em um log antes de serem aplicadas. Uma das principais vantagens da utilização do WAL é um número reduzido de forma significativa de gravações em disco, pois somente o arquivo de log deve ser liberado para o disco no momento da confirmação da transação, ao invés de cada arquivo de dados alterados pela transação. Em ambientes de multiusuários, efetivação de várias transações podem ser realizadas com um único fsync do arquivo de log
10.
11. COMO PARTICIPAR ? O PostgreSQL é um projeto open source coordenado pelo PostgreSQL Global Development Group. Embora as atividades do grupo sejam patrocinadas por diversas organizações de todo o mundo, seu modelo de desenvolvimento é o modelo Bazar (originalmente apresentado em A Catedral e o Bazar de Eric S. Raymond). Portanto, o desenvolvimento do PostgreSQL é feito por um grupo de desenvolvedores, em sua maioria voluntários, espalhados por todo o mundo e que se comunicam via Internet. Logo, trata-se, de um projeto direcionado pela comunidade de desenvolvedores e de usuários, a qual qualquer pessoa pode se juntar, bastando se inscrever em listas de discussão e participar delas.
12. COMO PARTICIPAR ? Voluntários interessados em contribuir com o projeto também podem consultar as sugestões de tarefas de desenvolvimento de novas funções e de correções de erros que são publicadas ou apresentar suas próprias sugestões. O código desenvolvido é submetido à equipe do projeto que pode aceitá-lo e incluí-lo nas novas versões ou recusá-lo. Voluntários também podem colaborar gerando documentação ou realizando traduções!
13. LICENÇA O PostgreSQL usa a licença BSD, que requer apenas que o código fonte licenciado mantenha seu direito de cópia e informação da licença. Esta licença certificada pela OSI é amplamente vista como flexível e amigável à empresas, já que ela não restringe o uso do PostgreSQL com aplicações comerciais e proprietárias. Juntamente com suporte de múltiplas empresas e propriedade pública do código, a licença BSD torna o PostgreSQL muito popular com fabricantes que querem anexar um banco de dados com seus próprios produtos sem medo de ônus financeiro, prisão à um só fabricante, ou mudanças nos termos de licenças.
14. LINGUAGEM A principal linguagem de programação utilizada no desenvolvimento do PostgreSQL 8.3.0 é o ANSI C. Entretanto, também são utilizadas minoritariamente outras linguagens conforme mostra a tabela. Linguagens de Programação utilizadas no PostgreSQL 8.3.0 Linguagem Linhas de código % ANSI C 541.312 94,66 yacc 15.527 2,72 lex 5.580 0,98 sh 5.412 0,95 perl 3.913 0,68 asm 65 0,01 python 12 0,00
15.
16. ESTADO ATUAL Além de doações, o projeto PostgreSQL se sustenta pelo patrocínio de diversas empresas, entre as quais se destacam: Fujitsu, Hub.Org, NTT Group, Red Hat, Skype, SRA e Sun Microsystems. O software tem adquirido prestígio na comunidade Linux, tendo recebido diversas vezes o prêmio Linux Journal Editor's Choice de melhor sistema de gerenciamento de banco de dados (SGBD). A aceitação do PostgreSQL tem se ampliado para além da comunidade de código aberto. Há entre os seus usuários grandes empresas internacionais, órgãos governamentais de vários países e universidades de prestígio mundial. Existe uma lista dos principais usuários no Brasil e no mundo e, também, há alguns estudos de caso de aplicações que utilizam o PostgreSQL.
18. CASOS DE SUCESSO O Detran do Ceará economizou R$ 1,7 milhão com banco de dados livre. A decisão do governo cearense de substituir a solução de banco de dados da Oracle pelo PostgreSQL fez com que o Detran economizasse gastos com pagamento de licenças e serviço de suporte técnico. O Detran tinha a seguinte arquitetura: um servidor de aplicação ligado a um servidor Oracle. Era nesta situação que as 1.287 tabelas e 426 views do banco se encontravam. Gastava-se muito dinheiro com o pagamento de licenças e o governador queria que o Detran utilizasse o Software Livre. Pensou-se em utilizar o MySQL, mas optou-se pelo PostgreSQL, que já era o banco de dados oficial do Governo do Ceará.
19. CASOS DE SUCESSO Quais foram as principais dificuldades encontradas? A principal dificuldade era que a equipe estava ocupada com as tarefas diárias de manutenção e desenvolvimento de novas ferramentas para o órgão. Além disso, a base de dados era muito complexa e utilizava muitos recursos que até então estavam disponíveis apenas no Oracle. Outro fator negativo foi que poucos técnicos tinham conhecimento em PostgreSQL. Como é a arquitetura do banco hoje? Agora o servidor de aplicação é ligado diretamente a um balanceador de carga, que é ligado a dois servidores do banco de dados. Além da economia com as licenças, quais outros resultados positivos a nova arquitetura trouxe? As consultas ficaram mais rápidas. Tem uma que levava 2 horas e, depois da migração, passou a ser realizada em 6 minutos. Na primeira vez, o responsável do Detran não acreditou e acabamos gastando as 2 horas tentando convencer que a consulta tinha sido mesmo realizada em 6 minutos.
28. ALGUMAS VANTAGENS Algumas mudanças da versão mais recente Replicação e Escalabilidade: Hot Standby, Replicação em Fluxo Administração e Segurança: Atualização in Loco (Upgrade-in-Place) Integrada (pg_upgrade), Autenticação RADIUS, Verificação de Força de Senha (passwordcheck) Comandos de Gestão de Permissões de Banco de Dados Facilitados (GRANT ON ALL e DEFAULT PERMISSIONS) Projeto de Bancos de Dados e SQL: Restrições de Unicidade Postergáveis, Gatilhos Condicionais. Gatilhos por Colunas, Ordenamento em Agregações, Novas "Windowing Functions" (RANGE PRECEEDING e FOLLOWING). Funções Armazenadas (Stored Procedures): Blocos de Código de Procedimento Anônimos (comando DO), Melhorias nas Funções Armazenadas em Perl e Python (incluindo suporte ao Python 3), Chamadas com Parâmetros Nomeados Performance e Recursos Avançados: Mensagens Assíncronas Melhoradas (LISTEN/NOTIFY), Suporte a Windows 64-bit, Otimização para Consultas Geradas por ORM (remoção de JOIN), Chaves Únicas para Dados não Escalares (Exclusion Constraints), Suporte Expantido para Dados Chave-Valor (HStore), Planos de Explain em JSON e XML
29. PGAccess : esta é a interface gráfica para usuário (GUI) original do PostgreSQL, no estilo do navegador de banco de dados do MS Access, escrito em Tcl/Tk. phpPgAdmin : um clone do popular phpMyAdmin, otimizado para o PostgreSQL. Esta é uma ferramenta administrativa muito boa, robusta, e existe uma versão totalmente em português. Funciona muito bem, tem muitas funcionalidades e é código livre. PGAdmin III : uma interface completa de administração do PostgreSQL, praticamente o cliente oficial. OpenOffice.org : o OpenOffice.org 2 traz o aplicativo Base que via JDBC permite uma manipulação bem avançada de bases de dados possibilitando o desenvolvimento de formulários e relatórios bem complexos. Xpg : interface de administração do banco de dados PostgreSQL baseado em Java, com acesso a tabelas e entrada de dados, interface para consultas e habilidade para exportar o resultado das mesmas para relatórios em HTML. Porém tem algumas limitações, algumas funções como criação de índices não podem ser feitas visualmente. É de código livre e tem um instalador RPM. FERRAMENTAS
32. BACKUP, EVITANDO DESASTRES Método SQL-dump : A idéia por trás do Método SQL-dump é gerar um arquivo texto contendo comandos SQL que, ao serem processados pelo servidor, recriam o banco de dados no mesmo estado em que este se encontrava quando o arquivo foi gerado. O PostgreSQL disponibiliza o programa utilitário pg_dump para esta finalidade. (o pg_dump não bloqueia outras operações no banco enquanto ta executando). Cópia de segurança no nível de sistema de arquivo: Uma estratégia alternativa para fazer cópia de segurança, é copiar diretamente os arquivos que o PostgreSQL usa para armazenar os dados dos bancos de dados. (O servidor de dados precisa estar totalmente parado tanto na hora de fazer a cópia como na hora re restaurar). Cópia de segurança em-linha: Durante todo o tempo, o PostgreSQL mantém o registro de escrita prévia (WAL = write ahead log) no subdiretório pg_xlog do diretório de dados do agrupamento. O WAL contém todas as alterações realizadas nos arquivos de dados do banco de dados. O WAL existe, principalmente, com a finalidade de fornecer segurança contra quedas: se o sistema cair, o banco de dados pode retornar a um estado consistente “refazendo” as entradas gravadas desde o último ponto de controle. Se for necessário fazer a recuperação, pode ser feita a recuperação da cópia de segurança do banco de dados no nível de sistema de arquivos e, depois, refeitas as alterações a partir da cópia dos arquivos de segmento do WAL, para trazer a restauração para o tempo presente.
35. CRIANDO O BANCO DE DADOS CREATE DATABASE nome_do_banco OWNER dono_do_banco TEMPLATE template ENCODING codificação TABLESPACE tablespace OWNER Normalmente, o criador se torna o dono do novo banco de dados. Os superusuários podem criar bancos de dados cujos donos são outros usuários utilizando a cláusula; TEMPLATE Por padrão, o novo banco de dados é criado clonando o banco de dados comum do sistema template1 . Um modelo diferente pode ser especificado escrevendo TEMPLATE modelo; ENCODING Codificação do conjunto de caracteres a ser utilizado no novo banco de dados; TABLESPACE O nome do espaço de tabelas associado ao novo banco de dados, ou DEFAULT para utilizar o espaço de tabelas do banco de dados modelo;
36.
37.
38. RESTRIÇÃO DE COLUNA E RESTRIÇÃO DE TABELA CHECK CREATE TABLE produtos ( cod_prod integer, nome text, preco numeric CHECK (preco > 0) ); UNIQUE CREATE TABLE exemplo ( a integer UNIQUE, b integer , c integer, ); PRIMARY KEY CREATE TABLE produtos ( cod_prod integer PRIMARY KEY , nome text, preco numeric ); FOREIGN KEY CREATE TABLE pedidos ( cod_pedido integer PRIMARY KEY, cod_prod integer REFERENCES produtos (cod_prod) , quantidade integer ); CREATE TABLE produtos ( cod_prod integer, nome text, preco numeric , CONSTRAINT CK_preco CHECK(preco>0) ); CREATE TABLE exemplo ( a integer, b integer , c integer, CONSTRAINT U_exemplo UNIQUE(a) ); CREATE TABLE produtos ( cod_prod integer, nome text, preco numeric, CONSTRAINT PK_produtos PRIMARY KEY(cod_prod) ); CREATE TABLE pedidos ( cod_pedido integer PRIMARY KEY, cod_prod integer, quantidade integer, CONSTRAINT FK_prod FOREIGN KEY (cod_prod) REFERENCES produto(cod_prod) ); RESTRIÇÃO DE COLUNA RESTRIÇÃO DE TABELA
39. SEQUENCE E AUTO-INCREMENTO CREATE SEQUENCE nome INCREMENT BY incremento MINVALUE valor_mínimo MAXVALUE valor_máximo START WITH início Ver estado atual da sequence: SELECT * FROM nome_da_sequence ; Selecionar o próximo valor desta seqüência: SELECT nextval(‘nome_da_sequence'); Utilizar esta seqüência no comando INSERT: INSERT INTO distribuidores VALUES ( nextval('serial') , 'nada'); Obs.: No Oracle nextval e currval são pseudocolunas e não funções.
40. SEQUENCE E AUTO-INCREMENTO Modos de se obter colunas de auto-incremento: Usando uma sequence: CREATE SEQUENCE seq_teste INCREMENT BY 1 MINVALUE 1 START WITH 1; CREATE TABLE testesequence( id integer DEFAULT nextval('seq_teste') NOT NULL, nome varchar(50) ) Usando os tipos SERIAL ou BIGSERIAL: Serial: inteiro de quatro bytes com auto-incremento; Bigserial : inteiro de oito bytes com auto-incremento. Tipo Serial 4 bytes: de 1 a 2147483647 Tipo bigserial 8 bytes: de 1 a 9223372036854775807 CREATE TABLE pessoa( id serial PRIMARY KEY, nome varchar(50) ) Obs: Os tipos de dado serial e bigserial não são tipos verdadeiros, mas meramente uma notação conveniente para definir colunas identificadoras únicas (semelhante à propriedade AUTO_INCREMENTO existente em alguns outros bancos de dados). Mudando o valor inicial de uma sequence usando SERIAL: ALTER SEQUENCE tabela_coluna_seq RESTART WITH 1000;
41. HERDANDO DE OUTRA TABELA INHERITS (herda) especifica uma lista de tabelas das quais a nova tabela herda, automaticamente, todas as colunas. O uso de INHERITS cria um relacionamento persistente entre a nova tabela descendente e suas tabelas ancestrais. As modificações de esquema nas tabelas ancestrais normalmente se propagam para as tabelas descendentes. Exemplo: CREATE TABLE tabelaPai ( id serial PRIMARY KEY, nome varchar(40) ) CREATE TABLE tabelaFilho( sobrenome varchar(40) ) INHERITS(tabelaPai) Dois inserts na tabela filho: INSERT INTO tabelaFilho (nome,sobrenome) VALUES ('Bazinga','Da Silva') INSERT INTO tabelaFilho (nome,sobrenome) VALUES ('Fulano','De Tal') Um insert na tabela pai: INSERT INTO tabelaPai (nome) VALUES ('Chewbacca') Select tabela filho: Select tabela pai:
42. O principal problema era a incapacidade do modelo relacional compreender “tipos” (atualmente, chamados de objetos), ou seja, combinações de dados simples que formam uma única unidade. Problema com o
43. OBJETO RELACIONAL Tipos de Dados: CREATE TYPE endereco AS ( rua varchar, numero integer ) Uso em tabela: CREATE TABLE pessoa ( id SERIAL PRIMARY KEY, nome varchar, endereco endereco ) Inserindo: INSERT INTO pessoa(nome,endereco) VALUES (‘Fulano ', (‘R. José das Cuias',11) ) INSERT INTO pessoa (endereco) VALUES ( ROW('Street Sand',69) ) Coluna única é obrigado usar “ROW”
44.
45. PL/pgSQL é uma linguagem procedural carregável desenvolvida para o sistema de banco de dados PostgreSQL. Os objetivos de projeto da linguagem PL/pgSQL foram no sentido de criar uma linguagem procedural carregável que pudesse: • ser utilizada para criar procedimentos de funções e de gatilhos; • adicionar estruturas de controle à linguagem SQL; • realizar processamentos complexos; • herdar todos os tipos de dado, funções e operadores definidos pelo usuário; • ser definida como confiável pelo servidor; • ser fácil de utilizar. INTRODUÇÃO
46. CREATE OR REPLACE FUNCTION NOME_DA_FUNÇÃO ( Variavel TIPO , ) RETURNS TIPO AS $$ DECLARE Variavel TIPO ; BEGIN instruções RETURN; EXCEPTION WHEN tipo_da_excessão THEN instruções_do_tratador RETURN ; END; $$ LANGUAGE plpgsql; ESTRUTURA DE UMA FUNÇÃO EM PL/PGSQL Só possui parâmetros IN. Delimitador Definição da Linguagem
47.
48. Domínios são úteis para abstrair campos comuns entre tabelas em um único local para manutenção. Por exemplo, uma coluna de endereço de correio eletrônico pode ser usada em várias tabelas, todas com as mesmas propriedades. Em vez de definir as restrições em cada tabela individualmente, deve ser definido e utilizado um domínio. CREATE DOMAIN nome_do_dominio AS tipo CHECK ( condição ) DOMÍNIO
49. DOMÍNIO Exemplo: --Criação da função que valida tipo sanguineo CREATE OR REPLACE FUNCTION validarSangue (p1 varchar ) RETURNS boolean AS $$ BEGIN RETURN (lower(p1) IN ('a', 'b', 'ab', 'o')); END; $$ LANGUAGE plpgsql; CREATE DOMAIN tipoSanguineo AS varchar CHECK ( validarSangue( VALUE )) CREATE TABLE pessoa2 ( id serial PRIMARY KEY, nome varchar(50), sangue tipoSanguineo ) INSERT INTO pessoa2(nome,sangue) VALUES ('vovozona','a'); //Inserção ok! INSERT INTO pessoa2(nome,sangue) VALUES ('Sheldon','y');