View
47
Download
2
Category
Preview:
DESCRIPTION
Banco de Dados Firebird. Ivanildo José de Sousa Aquino Júnior(JSAJ). Visão Geral. Oque é Interbase? O que é Firebird? Um pouco de história. O que é Interbase. Banco de dados comercial. O que é Interbase. Fácil de administrar (instalar, manter, mover e modificar) - PowerPoint PPT Presentation
Citation preview
Banco de Dados Firebird
Ivanildo José de Sousa Aquino Júnior(JSAJ)
Visão Geral
Oque é Interbase? O que é Firebird? Um pouco de história...
O que é Interbase
Banco de dados comercial
O que é Interbase
Fácil de administrar (instalar, manter, mover e modificar)
Pequeno (5mb, 2milhões de linhas de código, etc)
O que é Firebird?
Baseado no Interbase 6.0 Código aberto
Um pouco de história
Firebird é beasado no código fonte do InterBase 6.0 que foi lançado como Open Source pela Borland em agosto de 2000.
A história do InterBase teve início em 1984, logo, no total são 20 anos de história de banco de dados relacional como experiêncio do Firebird.
Histórico: Início
Fazer o código funcionar Entender as convenções
Hoje
Adicionados novos recursos Remoção de bugs Migração para C++ Reorganização e Simplificação
Recursos (1 de 3)
SQL 89, SQL 92 e SQL99 Stored procedures Triggers Constraints Delimited Identifiers Index Compression
Recursos (2 de 3)
Compressão de dados Localização Funções definidas pelos usuários Eventos Arrays Segurança baseada em regras
Recursos (3 de 3)
A.C.I.D Read-only database (cd-rom) Generetors Onlinebackup Character Sets
v1.5: Características
100% compatível com a interface do Interbase
Nova extensão padrão para o banco de dados (.fdb)
Novo administrador de configuração de servidor (Firebird.conf substistitui IBConf)
v1.5: Novos recursos Triggers e SP Savepoints
SAVEPOINT save_pointname;ROLLBACK [WORK] TO [SAVEPOINT] save_pointname;
“CREATE OR ALTER” syntax Universal Triggers
CREATE TRIGGER my_trigger FOR my_table BEFORE INSERT OR UPDATE…
Declaração de variáveis aninhadasDECLARE [VARIABLE] name <variable_type> [{'=' | DEFAULT} value];
Exception re-initiate semantics (ie. Throw) Suporte para blocos “BEGIN … END” vazios
v1.5: Novos recursos SQL (1 de 2) Função com suporte para “CASE” Função com suporte para “COALESCE” Função com suporte para “NULLIF” “GROUP BY” suporta:
By Function,Sub-Query,By Column Alias, andBy ordinal (posição da coluna)
“ORDER BY” expressão arbitrária “SELECT First X” e “ORDER BY” suporta Sub-
Selects
v1.5: Novos recursos SQL(2 de 2) RECREATE VIEW NULL Ordering, como parte do padrão SQL92 User-Defined Constraint index names
Index names now based on either constraint name, or user defined name
Explicit locking in SELECT statements“SELECT … FOR UPDATE WITH LOCK”
EXECUTE STATEMENTEXECUTE STATEMENT “…”;
“Boolean” alias to SmallInt “BIGINT” alias to Numeric( 18, 0)
Equipe do Firebird
4 Administradores 56 Membros dos projetos 12 Desenvolvedores ativos
Banco de dados ativo
Computed Fields Triggers Views com triggers Funções definas pelo usuário Filtros BLOB Stored procedures
Computed Fields
Incluem uma fórmula em sua definição
Triggers
SQL extendido Ações BEFORE e AFTER
Views com triggers
Visões atualizáveis(Ações BEFORE e AFTER dos triggers)
Visões não atualizáveisUso de procedimentos
Funções definidas pelo Usuário Bibliotecas escritas em linguagem
de programação Contexto de falta de conexão Retorna valores simples
Filtros BLOB
Blob type translation Compressão Criptografia EdiçãoCascadeEscritas em linguagem de
programação
Stored procedures
Encapsula mento de ações Construção de pseudo-tabelas Atomicidade
Linguagem dos triggers e procedimentos
IF / THEN / ELSEBEGIN / ENDWHILE / DOExceptionsFOR SELECT …SUSPEND
Motivos para usar firebird (1/4) DBA não requerido Alta performance nas aplicações Versioning Arquitetura SuperServer
Motivos para usar firebird (2/4) Sinalizadores de Eventos Funções definidas pelo usuário UDFs Binary Large Objects Arrays Multidimensionais Banco de Dados distribuídos
Motivos para usar firebird (3/4) Junção de múltiplos banco de dados Versioning Commit em duas fases Recuperação distribuída de commit
em duas fases Sistema de travamento otimista
Motivos para usar firebird (4/4) Flexibilidade de Plataforma Distribuição Livre Usuários de Peso
Exemplos consultas(adicionando usuários e regras)
SQL> GRANT SELECT, UPDATE, INSERT, DELETE ON sales_catalog TO administrator;SQL> GRANT administrator TO TestAdmin;SQL> quit;
Exemplos consultas(inserindo e procurando dados)
SQL> INSERT INTO sales_catalog VALUES('001', 'Aluminum Wok', 'Chinese wok');
SQL> SELECT * FROM sales_catalog;
Conclusões
Ideal para banco de dados embutidos
Possui todas os recursos comuns Baixa complexidade
Perguntas?
Recommended