Sie sind auf Seite 1von 9

Esta pgina ou seco no cita nenhuma fonte ou referncia, o que compromete sua credibilidade (desde dezembro de 2010).

Por favor, melhore este artigo providenciando fontes fiveis e independentes, inserindo-as no corpo do texto por meio de notas de rodap. Encontre fontes: Google notcias, livros, acadmico Scirus. Veja como referenciar e citar as fontes.
Banco de dados (ou base de dados), um conjunto de registros dispostos em estrutura regular que possibilita a reorganizao dos mesmos e produo de informao. Um banco de dados normalmente agrupa registros utilizveis para um mesmo fim. Um banco de dados usualmente mantido e acessado por meio de um software conhecido como Sistema Gerenciador de Banco de Dados (SGBD). Normalmente um SGBD adota um modelo de dados, de forma pura, reduzida ou estendida. Muitas vezes o termo banco de dados usado, de forma errnea, como sinnimo de SGBD. O modelo de dados mais adotado hoje em dia o modelo relacional, onde as estruturas tm a forma de tabelas, compostas por tuplas (linhas) e colunas. Um Sistema de Gesto de Bases de Dados, (SGBD) no nada mais do que um conjunto de programas que permitem armazenar, modificar e extrair informao de um banco de dados. H muitos tipos diferentes de SGBD. Desde pequenos sistemas que funcionam em computadores pessoais a sistemas enormes que esto associados a mainframes. Um Sistema de Gesto de Base de Dados implica a criao e manuteno de bases de dados, elimina a necessidade de especificao de definio de dados, age como interface entre os programas de aplicao e os ficheiros de dados fsicos e separa as vises lgica e de concepo dos dados. Assim sendo, so basicamente trs as componentes de um SGBD: 1. Linguagem de definio de dados (especifica contedos, estrutura a base de dados e define os elementos de dados); 2. Linguagem de manipulao de dados (para poder alterar os dados na base); 3. Dicionrio de dados (guarda definies de elementos de dados e respectivas caractersticas descreve os dados, quem os acede, etc. [questes de informao]). (Gouveia; 2004).

ndice
esconder

1 Modelos de base de dados 2 Aplicaes de bancos de dados

2.1 Aplicativo de Banco de Dados

3 Transao

4 Segurana em banco de dados 5 Funes internas comuns em BDs 6 Ver tambm 7 Referncias 8 Ligaes externas

[editar]Modelos

de base de dados

O modelo plano (ou tabular) consiste de matrizes simples, bidimensionais, compostas por elementos de dados: inteiros, nmeros reais, etc. Este modelo plano a base das planilhas eletrnicas. O modelo em rede permite que vrias tabelas sejam usadas simultaneamente atravs do uso de apontadores (ou referncias). Algumas colunas contm apontadores para outras tabelas ao invs de dados. Assim, as tabelas so ligadas por referncias, o que pode ser visto como uma rede. Uma variao particular deste modelo em rede, o modelo hierrquico, limita as relaes a uma estrutura semelhante a uma rvore (hierarquia - tronco, galhos), ao invs do modelo mais geral direcionado por grafos. Bases de dados relacionais consistem, principalmente de trs componentes: uma coleo de estruturas de dados, nomeadamente relaes, ou informalmente tabelas; uma coleo dos operadores, a lgebra e o clculo relacionais; e uma coleo de restries da integridade, definindo o conjunto consistente de estados de base de dados e de alteraes de estados. As restries de integridade podem ser de quatro tipos: domnio (tambm conhecidas como type), atributo, relvar (varivel relacional) e restries de base de dados. Diferentemente dos modelos hierrquico e de rede, no existem quaisquer apontadores, de acordo com o Princpio de Informao: toda informao tem de ser representada como dados; qualquer tipo de atributo representa relaes entre conjuntos de dados. As bases de dados relacionais permitem aos utilizadores (incluindo programadores) escreverem consultas (queries) que no foram antecipadas por quem projetou a base de dados. Como resultado, bases de dados relacionais podem ser utilizadas por vrias aplicaes em formas que os projetistas originais no previram, o que especialmente importante em bases de dados que podem ser utilizadas durante dcadas. Isto tem tornado as bases de dados relacionais muito populares no meio empresarial. O modelo relacional uma teoria matemtica desenvolvida por Edgard Frank Codd, matemtico e pesquisador da IBM, para descrever como as bases de dados devem funcionar. Embora esta teoria seja a base para o software de bases de dados relacionais, muito poucos sistemas de gesto de bases de dados seguem o modelo de forma restrita ou a p da letra - lembre-se das 13 leis do modelo relacional - e todos tm funcionalidades que violam a teoria, desta forma variando a complexidade e o poder. A discusso se esses bancos de dados merecem ser chamados de

relacional ficou esgotada com o tempo, com a evoluo dos bancos existentes. Os bancos de dados hoje implementam o modelo definido como objeto-relacional.

[editar]Aplicaes

de bancos de dados

Sistemas Gerenciadores de Bancos de dados so usados em muitas aplicaes, enquanto atravessando virtualmente a gama inteira de software de computador. Os Sistemas Gerenciadores de Bancos de dados so o mtodo preferido de armazenamento/recuperao de dados/informaes para aplicaes multi-usurias grandes onde a coordenao entre muitos usurios necessria. At mesmo usurios individuais os acham conveniente, entretanto, muitos programas de correio eletrnico e organizadores pessoais esto baseados em tecnologia de banco de dados standard.

[editar]Aplicativo

de Banco de Dados

Um Aplicativo de Banco de dados um tipo de software exclusivo para gerenciar um banco de dados. Aplicativos de banco de dados abrangem uma vasta variedade de necessidades e objectivos, de pequenas ferramentas como uma agenda, at complexos sistemas empresariais para desempenhar tarefas como a contabilidade. O termo "Aplicativo de Banco de dados" usualmente se refere a softwares que oferecem uma interface para o banco de dados. O software que gerencia os dados geralmente chamado de sistema gerenciador de banco de dados (SGBD) ou (se for embarcado) de "database engine". Exemplos de aplicativos de banco de dados so Microsoft Visual FoxPro, Microsoft Access, dBASE, FileMaker, (em certa medida) HyperCard, MySQL,Intpr, PostgreSQL, Firebird, Microsoft SQL Server, Oracle, Informix, DB2, Cach e Sybase. Em Maro, 2004, AMR Research (como citado em um artigo da CNET News.com listado na seco de "Referncias") previu que aplicaes de banco de dados de cdigo aberto seriam amplamente aceitas em 2006.

[editar]Transao
um conjunto de procedimentos que executado num banco de dados, que para o usurio visto como uma nica ao. A integridade de uma transao depende de 4 propriedades, conhecidas como ACID.

Atomicidade

Todas as aes que compem a unidade de trabalho da transao devem ser concludas com sucesso, para que seja efetivada. Qualquer ao que constitui falha na unidade de trabalho, a transao deve ser desfeita (rollback). Quando

todas as aes so efetuadas com sucesso, a transao pode ser efetivada (commit).

Consistncia

Nenhuma operao do banco de dados de uma transao pode ser parcial.O status de uma transao deve ser implementado na ntegra. Por exemplo, um pagamento de conta no pode ser efetivado se o processo que debita o valor da conta corrente do usurio no for efetivado antes, nem viceversa.

Isolamento

Cada transao funciona completamente parte de outras estaes. Todas as operaes so parte de uma transao nica. O principio que nenhuma outra transao, operando no mesmo sistema, pode interferir no funcionamento da transao corrente( um mecanismo de controle). Outras transaes no podem visualizar os resultados parciais das operaes de uma transao em andamento.

Durabilidade

Significa que os resultados de uma transao so permanentes e podem ser desfeitos somente por uma transao subseqente.Por exemplo: todos os dados e status relativos a uma transao devem ser armazenados num repositrio permanente, no sendo passveis de falha por uma falha de hardware.

Na prtica, alguns SGBDs relaxam na implementao destas propriedades buscando desempenho. Controle de concorrncia um mtodo usado para garantir que as transaes sejam executadas de uma forma segura e sigam as regras ACID. Os SGBD devem ser capazes de assegurar que nenhuma ao de transaes completadas com sucesso (committed transactions) seja perdida ao desfazer transaes abortadas (rollback). Uma transao uma unidade que preserva consistncia. Requeremos, portanto, que qualquer escalonamento produzido ao se processar um conjunto de transaes concorrentemente seja computacionalmente equivalente a um escalonamento produzindo executando essas transaes serialmente em alguma ordem. Diz-se que um sistema que garante esta propriedade assegura aseriabilidade.

[editar]Segurana

em banco de dados

Os bancos de dados so utilizados para armazenar diversos tipos de informaes, desde dados sobre uma conta de e-mail at dados importantes da Receita Federal. A segurana do banco de dados herda as mesmas dificuldades que a segurana da informao enfrenta, que garantir a integridade, a disponibilidade e a confidencialidade. Um Sistema gerenciador de banco de dados deve fornecer mecanismos que auxiliem nesta tarefa. Uma forma comum de ataque segurana do banco de dados, a injeo de SQL, em bancos de dados que faam uso desta linguagem, mas bancos de dados NoSQL tambm podem ser vtimas. Para evitar estes ataques, o desenvolvedor de aplicaes deve garantir que nenhuma entrada possa alterar a estrutura da consulta enviada ao sistema. Os bancos de dados SQL implementam mecanismos que restringem ou permitem acessos aos dados de acordo com papeis ou roles fornecidos pelo administrador. O comando GRANT concede privilgios especficos para um objeto (tabela, viso, seqncia, banco de dados, funo, linguagem procedural, esquema ou espao de tabelas) para um ou mais usurios ou grupos de usurios.[1]

[editar]Funes

internas comuns em BDs

3. Tabelas 4. Interrogar a Base de Dados 5. Distribuindo a Informao por vrias Tabelas 6. Formulrios 7. Relatrios 8. Programao: Mdulos e Procedimentos 9. Representao de Conhecimento em Forma de Regras 10. Representao de Consultas ("Queries") em SQL 11. Uma Aplicao: Requisio de Livros numa Biblioteca 12. Integrao do Access com outras aplicaes 13. Exerccios 14. Apndice

O que uma Base de Dados?

possvel dizer de uma forma genrica que qualquer conjunto de dados uma Base de Dados (BD): uma agenda com as moradas de pessoas conhecidas, uma lista de CDs, um livro, apontamentos tirados nas aulas, os dados guardados nos computadores das Finanas sobre os contribuintes e a World Wide Web. O objectivo de criarmos e mantermos uma BD a de poder obter e utilizar os dados l guardados: procurar a morada de uma determinada pessoa, saber o que foi dito nas aulas sobre um tema ou procurar a pgina WWW do Prmio Nobel da Economia deste ano. Embora sendo possvel usar a definio genrica dada acima, o termo base de dados aplicado hoje em dia principalmente para fazer referncia a bases de dados informticas, isto , conjuntos de dados estruturados, manipulados usando um Sistema de Gesto de Bases de Dados (SGBD) ou Database Management System (DBMS). Para permitir ao utilizador atingir os objectivos referidos acima, um SGBD disponibiliza linguagens de:

definio de dados: para criao e alterao da estrutura da BD (DDL - Data Definition Language) consulta de dados: obter e processar os dados armazenados (DQL - Data Query Language) manipulao de dados: para acrescentar dados novos e modificar dados existentes (DML - Data Manipulation Language).

Hoje em dia, cada vez mais SGBD, como o Access, "escondem" essas linguagens por trs de interfaces do utilizador grfica. Outras caractersticas dos SGBDs so:

acesso simultneo: vrios utilizadores podem aceder e alterar a mesma BD ao mesmo tempo sem criar inconsistncias. Por exemplo, 2 utilizadores diferentes podem consultar simultaneamente os dados do mesmo cliente. No entanto o SGBD no permite que ambos os utilizadores alterem esses dados ao mesmo tempo. vistas: diferentes utilizadores podero ter o seu acesso limitado a partes da BD. Por exemplo, embora todos os dados de uma organizao estejam na mesma BD, aqueles que so importantes para a definio da estratgia s podem ser consultados pela administrao. construo de aplicaes: a tendncia actual dos SGBDs para combinarem a gesto do armazenamento/manipulao dos dados com a construo das aplicaes que implementam os processos da organizao. Tradicionalmente, os processos eram implementados independentemente, com recurso a linguagens de programao mais ou menos integradas com o SGBD.

Alguns exemplos de SGBD de grande porte so ORACLE, Informix, Adabas, SQL Server e DB2. Para PCs temos o MySQL, Dbase, FoxPro e Access. Os primeiros tm mais capacidade e so mais fiveis do que os ltimos. Estes so adequados para uso domstico, em pequenas empresas ou como forma de aceder a partir de PCs a BDs

instaladas em sistemas de grande porte, atravs de uma aplicao acessvel ao utilizador no especialista em informtica

1. Um Pouco de Histria?
A utilizao comercial de BDs comeou nos anos 60. Inicialmente a informao era guardada em ficheiros e a sua consulta e manipulao era muito pouco prtica. Para definio de dados eram usados os modelos hierrquico e de rede. No incio dos anos 70 surgiram os SGBD relacionais cuja popularidade no tem parado de crescer at hoje. Este sucesso pode ser explicado pela simplicidade do modelo em que assentam, o modelo relacional, que constituido somente por relaes, e pelo surgimento de uma linguagem de manipulao simples e eficiente, o SQL (Structured Query Language).

2. ?E de Futurologia
Como j foi dito, a simplicidade do modelo relacional bem como a separao entre a definio e a manipulao dos dados foram factores importantes para o seu sucesso. No entanto, este modelo dificulta a representao de situaes complexas e o armazenamento e manipulao de novos formatos de dados como imagens, som e vdeo. Uma resposta adequada a estas questes dada pelo modelo orientado aos objectos (OO). Este modelo no s a base dos OODBMS (Object-Oriented Database Management Systems) como est a ser gradualmente incorporado em alguns RDBMS (Relational DBMSs ou SGBDs Relacionais). Esta ltima soluo facilita a migrao das BDs existentes para o novo modelo, tornando-se mais atrante para muitas empresas. No s as organizaes querem que as suas BDs representem de forma mais exacta o meio em que se inserem como tambm querem obter delas mais e melhor informao. J no basta poder conhecer a resposta a perguntas como "Quem comprou que produtos numa determinada data?". Para obter a to falada vantagem competitiva preciso poder saber "Qual a segmentao dos clientes que permite maximizar o proveito da publicidade?", por exemplo. Esta maior exigncia deu origem disciplina de Extraco de Conhecimento de Dados (Knowledge Discovery in Databases), mais conhecida comoData Mining, intimamente ligada com outro assunto da moda, o Data Warehousing. O data warehousing surgiu como resposta necessidade das organizaes integrarem os sistemas de informao dos vrios departamentos. A informao integrada no data warehouse d uma perspectiva global da organizao e, isoladamente ou complementada com informao obtida com recurso ao data mining, permite uma tomada de decises mais informada.

3. Porqu aprender Bases de Dados?


Porque que algum que no (nem pretende ser) profissional de sistemas de informao dever aprender a usar BDs?

1. Pelo mesmo motivo pelo qual se devia aprender a usar um computador h 10 anos atrs: a divulgao crescente dos computadores far com que dentro em breve os SGBDs sejam ferramentas de uso to comum como so hoje em dia as folhas de clculo. 2. Para facilitar a comunicao com os profissionais de sistemas de informao: a criao de sistemas de informao um processo que envolve pessoas tanto da rea de sistemas de informao como da rea de aco da organizao, sendo a comunicao entre ambos os grupos essenciais para o sucesso do sistema. Ora, os problemas de comunicao fazem com que o sistema criado raramente satisfaa as expectativas do cliente e mesmo algumas vezes seja o motivo do insucesso deste tipo de projectos. Sendo as BDs a infra-estrutura dos sistemas de informao, algum conhecimento destas poder contribuir para melhorar a qualidade dos sistemas de informao.

1. Objectivos Depois de completar este mdulo, o aluno dever ser capaz de:

desenhar uma base de dados para um problema simples, e utilizar as linguagens de definio, consulta e manipulao de dados.

Para aplicar os conceitos aprendidos ser usado o Access da Microsoft. Note-se que se pretende utilizar o Access para apreender conceitos que so aplicveis noutros SGBDs e no obter um conhecimento profundo da utilizao desta aplicao. Isto implica que frequentemente no ser descrita a forma ptima de executar algumas tarefas mas antes aquela que melhor poder ser generalizada para outros SGBDs.

Ao contrrio do que acontece com os primeiros, nos 2 items que se seguem impossvel fugir s especificidades do sistema usado:

construir uma aplicao que funcione como um todo, e construir programas simples.

1. Notao Os comandos so apresentados como uma lista de nomes de menus separados por vrgulas, formatados de forma diferente do resto do texto. Assim, por exemplo, para abrir uma BD necessrio executar o comando File, Open, que implica abrir o menu File e executar a opo Open. Nalguns casos, a verso portuguesa de comandos ou outras funcionalidades do Access e