Você está na página 1de 34

1

UNIVERSIDADE CATLICA DE BRASLIA TECNOLOGIA EM SEGURANA DA INFORMAO

Celso Hatano - UC08089088

Fundamentos de Banco de Dados

Sistematizao Controle da Campanha Poltica

Japo 2010

SUMRIO

1. INTRODUO..............................................................................................................4 2. OBJETIVOS....................................................................................................................6 3. RESULTADOS ESPERADOS......................................................................................7 4. PROBLEMAS DIAGNOSTICADOS............................................................................8 5. CUSTO BENEFCIO......................................................................................................8 6. USURIOS DA SOLUO..........................................................................................9 7. REGRAS DE NEGCIO................................................................................................9 8. PROPOSTA DE SOLUO........................................................................................10 9. MODELO ENTIDADE RELACIONAMENTO........................................................11 10. MODELO FSICO DE DADOS...................................................................................12 11. SCRIPT.........................................................................................................................13 12. COMANDOS UTILIZADOS PARA MANIPULAR DADOS....................................31 13. PROTTIPO.................................................................................................................31 14. CONCLUSO..............................................................................................................33 15. REFERNCIAS BIBLIOGRFICAS..........................................................................34

LISTA DE FIGURAS

Figura 1 MER............................................................................................................................12 Figura 2 Modelo Fsico.............................................................................................................12 Figura 3 Prottipo.....................................................................................................................32

1. INTRODUO

Combinar todas as informaes que uma campanha poltica possui ,geralmente no fcil, pois frequentemente tais informaes esto armazenadas em locais diversos. medida que o nmero de informaes para uma campanha aumenta, o volume de informaes que eles contm fica maior e agrava o problema de integrao de informaes. Organizar uma campanha eleitoral como abrir uma empresa que tem como meta a liderana de um setor, mas em tempo recorde e sem direito a falhas. Numa campanha eleitoral, necessrio dispor de tecnologia e sistemas inteligentes que possam gerir informaes com rapidez e segurana, garantindo ao candidato maior visibilidade para tomada de decises e aplicao de estratgias. Distribuio e heterogeneidade de bancos de dados se tornaram palavras chaves para caracterizar a infra-estrutura dos sistemas de informao atuais. O conceito de banco de dados bem como as tecnologias de bancos de dados tm ganhado mais importncia e esto se tornando cada vez mais populares com a expanso da utilizao dos computadores. Esta popularizao dos computadores acarretou a gerao de um grande volume de dados e informaes. Como conseqncia, tornou-se necessrio organizar, armazenar e acessar estas informaes de forma ordenada e fcil. Os sistemas geralmente contm uma grande quantidade de entidades, isto requer mecanismos que permitam projetar estes bancos de dados de forma fcil e sem perder informaes indispensveis a respeito do problema. Para ilustrar, um sistema para controle de uma campanha poltica que possui vrias entidades, tais como funcionrios, coligaes partidrias, publicidade, folha de pagamentos, alm do controle de contas a pagar . Somado a este conjunto de entidades no se pode esquecer das dependncias existentes entre as mesmas, e que definem o comportamento do banco de dados a ser desenvolvido. Distribuio e heterogeneidade de bancos de dados se tornaram palavras chaves para caracterizar a infraestrutura dos sistemas de informao atuais. Utiliza-se uma definio mais restrita para banco de dados, onde o mesmo ser sempre a representao de uma situao encontrada no mundo real. Ou seja, um banco de dados definido dentro de um universo de discurso, isto , a situao real que ele representa.

para a modelagem de um banco de dados so utilizados diagramas que permitem descrever de forma simples e universal, todos os aspectos importantes do sistema que se deseja representar. Os objetivos de um projeto de banco de dados so: satisfazer os requisitos atuais de

informaes dos usurios e aplicaes; produzir informaes estruturadas de fcil compreenso; e suportar os requisitos de processamento, de desempenho, tempo de resposta e espao de armazenamento; permitir o acesso a vrias fontes de informao heterogneas e independentes, atravs de uma viso global.

2. OBJETIVOS

O Objetivo desta sistematizao consiste em criar um mecanismo de controle de uma campanha eleitoral, de forma computacional, atravs do uso de um banco de dados completo. O banco de dados representar o mini mundo de um candidato a um cargo pblico , e conter as regras do negcio de sua campanha para uso em vrios tipos de pleito. O candidato ter todo controle de sua campanha, desde monitorar suas atividades, seus gastos no empreendimento, bem como seus tipos e as fontes de rendas captadas (doaes e origens). O banco de dados apresentar tambm, as coligaes (alianas polticas) com outros partidos, cidades e estados visitadas, alm das atividades desenvolvidas em cada evento. Um banco de dados projetado para atender os aspectos inerentes ao universo delimitado, neste caso, o controle de uma campanha. Ser abordado um problema relacionado a uma Campanha Poltica. Ser introduzido o escopo do problema, ou seja, o seu propsito e as necessidades que este deve atender. Assim, a partir desta descrio deve-se construir um modelo entidade relacionamento (MER) para esta aplicao. O problema do Controle de uma Campanha Poltica abordado com maiores detalhes ao longo das prximas sees. Uma vez definido o escopo da aplicao, ou seja, o seu propsito, o prximo passo identificar os elementos que a constituem, e por conseqncia definir todos os dados relevantes para cada item existente. Uma Campanha Poltica tem como objetivo projetar e controlar todas as informaes relevantes para uma candidatura tais como locais da campanha a ser realizada,cadastro de pessoas, para citar algumas de suas atividades. Para isto, preciso que a campanha possua pessoas ou funcionrios capazes de desempenhar as diversas tarefas relacionadas a este ramo de negcios. Para facilitar a coordenao dos trabalhos destes profissionais, a empresa (campanha) organiza as pessoas em equipes de acordo com as suas especialidades. Desta forma, estas equipes so alocadas em uma ou mais tarefas que estejam sendo desenvolvidas pela empresa. Este um cenrio que descreve uma aplicao real de um sistema de banco de dados. Percebe-se que este apresenta vrias entidades e restries que devem ser respeitadas a fim de que o sistema funcione da forma esperada. Para isto, ser criado nas prximas sees, um

modelo ER que descreva todas as particularidades expostas anteriormente, servindo de base para ilustrar os conceitos que envolvem a modelagem de um banco de dados relacional. O objetivo final projetar o diagrama ER , seu modelo fsico e script , e aplicar este modelo ao Microsoft SQL SERVER, criando um banco de dados que ser chamado de Controle de Campanha Poltica.

3. RESULTADOS ESPERADOS

Um banco de dados tem a funo de armazenar informaes e possibilitar o acesso s mesmas. Para isto, deve-se utilizar uma linguagem de consulta para realizar esta tarefa. O objetivo apresentar uma ferramenta de consulta que permita a interao com o banco de dados de forma automtica e sem que seja necessrio o conhecimento profundo desta linguagem de consulta. Toda a navegao feita de forma visual e automtica, o que facilita a utilizao do banco de dados mesmo para usurios com pouca experincia no assunto. Os usurios tm uma viso nica dos dados integrados, possibilidade de integrar diversas fontes de dados sem a necessidade de mudanas nas plataformas tecnolgicas existentes, realizar o cruzamento de dados para extrair informaes relevantes e consequentemente uslas para tomadas de decises. Isso amplia a viso da empresa para informar, analisar, otimizar e planejar. A padronizao promove melhorias de qualidade dos dados estatsticos

disponveis. As informaes tcnicas quando disponveis de forma padronizada entre os diversos setores da campanha servem como ferramenta para garantir a qualidade dos

produtos e atender as expectativas de todos os envolvidos alm de possibilitar ao candidato a descoberta de possveis falhas em sua abordagem como candidato.

4. PROBLEMAS DIAGNOSTICADOS

A definio de um esquema conceitual global a partir de um grande nmero de esquemas locais que so frequentemente alterados considerada muito difcil devido manuteno que deve ser realizada frequentemente no esquema global. O processo de integrao requer a interveno do usurio para a resoluo de conflitos semnticos, estruturais e comportamentais, e por isso s pode ser parcialmente automatizado. A manuteno de consistncia no esquema conceitual global um problema de destaque, pois pode ser possvel que esquemas locais sejam independentemente alterados, o que afeta a definio global do esquema. Portanto necessrio que o esquema conceitual global seja tambm modificado de acordo com as alteraes feitas no esquema local. A criao de mecanismos para o mapeamento dessas mudanas no trivial. Uma forma de superar esse problema considerar o esquema conceitual global como sendo uma viso generalizada definida sobre os esquemas conceituais locais.

5. CUSTO-BENEFCIO

A integrao de informaes feita com o intuito de fornecer ao Candidato e sua equipe, pronto acesso aos dados necessrios para tomadas de decises. A escolha do SGBD neste trabalho foi baseada na portabilidade, confiabilidade, preo, ferramentas extras e na variedade de interfaces grficas. O critrio que teve influncia durante a escolha do SGBD foi o preo, devido as polticas de diminuio de gastos.

6. USURIOS DA SOLUO

O usurio final deste sistema computacional (banco de dados) ser o prprio candidato e sua equipe de apoio. O sistema ser gerido por essa equipe que introduzir todos os dados captados para uso de uma futura campanha poltica.

7. REGRAS DE NEGCIO

Ter controle de todos os movimentos feitos em uma campanha poltica, que inclui, gastos em material de publicidade, hotis hospedados em diferentes cidades e estados, doaes recebidas por partidos coligados, terceiros, parceiros e outras fontes. necessrio, tambm, que este sistema possa guardar em forma de texto e vdeo, suas promessas de campanha e discursos a serem utilizados, campanhas estas para uma atual candidatura e para futuras que por vierem. necessrio que tenha um banco de dados de todas as cidades e estados visitados, organizaes feitas, contatos de apoio nesses locais e atividades desenvolvidas, como eventos, palestras, comcios, etc.

10

8. PROPOSTA DE SOLUO

Os dados dispostos da forma desestruturada e aliados ao fato de que muitos sistemas possuem solues complexas, com diversas fontes de dados, um fator estimulante para realizar a padronizao dessas informaes, transformando-as em dados relevantes e consistentes. Alguns benefcios oriundos da integrao de bancos de dados so: Os usurios tm uma viso nica dos dados integrados. Possibilidade de integrar diversas fontes de dados sem a necessidade de mudanas nas plataformas tecnolgicas existentes. Realizar o cruzamento de dados para extrair informaes relevantes e

consequentemente us-las para tomadas de decises. Isso amplia a viso da campanha para informar, analisar, otimizar e planejar. Permitem acessar a base de dados e gerar relatrios especficos do negcio. A padronizao promove melhorias de qualidade, dos dados estatsticos disponveis.

As informaes tcnicas quando disponveis de forma padronizada entre os diversos


setores da campanha servem como ferramenta para garantir a qualidade do controle e atender as expectativas do candidato.

A escolha do SGBD determinada por uma srie de fatores, como fatores tcnicos, econmicos e correspondentes poltica da organizao. Os fatores tcnicos abrangem a adequao do SGBD s tarefas que sero realizadas no projeto. Fatores econmicos influenciam muito na escolha de um SGBD, pois dependendo da necessidade do candidato e da sua disponibilidade financeira ela pode encontrar desde sistemas gratuitos at sistemas com preos muito elevados. A familiaridade da equipe de programao dentro da organizao com o sistema deve ser levada em conta na escolha do SGBD, pois a organizao pode ser favorecida com a reduo de custos de treinamento e tempo de aprendizagem. Alm disso, fatores como a portabilidade do SGBD entre diferentes tipos de hardware e sistemas operacionais, e as ferramentas adicionais inclusas no sistema para backup, recuperao de dados, restaurao de dados, otimizao de desempenho, integridade de segurana tambm devem ser levadas em conta.

11

Para a modelagem fsica do projeto foi escolhido a ferramenta PowerDesigner da Sybase. O PowerDesigner uma soluo completa para projeto, desenvolvimento e modelagem corporativa, que permite a utilizao das mais avanadas tcnicas de engenharia de software, compartilhando todas as informaes entre os profissionais de sua organizao. Com o PowerDesigner possvel ter, em uma nica interface, uma viso integrada de todo o ciclo de desenvolvimento de sistemas. A escolha do SGBD neste trabalho foi baseada na portabilidade, confiabilidade, preo, ferramentas extras e na variedade de interfaces grficas. O MS SQL Server um SGBD sistema gerenciador de Banco de dados relacional criado pela Microsoft e fornece uma plataforma confivel de dados que permite que a execuo de aplicaes de misso crtica mais exigentes.

9. MODELO ENTIDADE RELACIONAMENTO

O Modelo Entidade-Relacionamento (MER) representa as estruturas de dados de uma forma mais natural e mais prxima do mundo real dos negcios. O modelo Entidade-Relacionamento (ER ou MER) constitui-se em uma simbologia que permite representar de forma grfica os elementos que definem um sistema de banco de dados. Basicamente existem smbolos para representar as entidades e os seus atributos, bem como os seus relacionamentos e restries. Figura 1

12

Figura 1: MER

10. MODELO FSICO DE DADOS

Durante esta fase so projetadas as especificaes para o armazenamento do banco de dados, em termos das estruturas fsicas de armazenamento, do posicionamento dos ndices e de registros. Figura 2

Figura 2: Modelo Fisico

13

11. SCRIPT
/*==============================================================*/ /* DBMS name: /* Created on: Microsoft SQL Server 2005 25/5/2010 23:09:04 */ */

/*==============================================================*/ if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CADASTROPESSOAS') and o.name = 'FK_CADASTRO_BAIRROSVI_BAIRRO') alter table CADASTROPESSOAS drop constraint FK_CADASTRO_BAIRROSVI_BAIRRO go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CADASTROPESSOAS') and o.name = 'FK_CADASTRO_CARGOSIMP_CARGOSDE') alter table CADASTROPESSOAS drop constraint FK_CADASTRO_CARGOSIMP_CARGOSDE go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CADASTROPESSOAS') and o.name = 'FK_CADASTRO_CIDADESEE_CIDADE') alter table CADASTROPESSOAS drop constraint FK_CADASTRO_CIDADESEE_CIDADE go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CANDIDATURAPOLITICA') and o.name = 'FK_CANDIDAT_COLIGACAO_COLIGACO') alter table CANDIDATURAPOLITICA

14

drop constraint FK_CANDIDAT_COLIGACAO_COLIGACO go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CANDIDATURAPOLITICA') and o.name = 'FK_CANDIDAT_CONTABILI_CONTABIL') alter table CANDIDATURAPOLITICA drop constraint FK_CANDIDAT_CONTABILI_CONTABIL go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CANDIDATURAPOLITICA') and o.name = 'FK_CANDIDAT_LOCALCAMP_LOCALCAM') alter table CANDIDATURAPOLITICA drop constraint FK_CANDIDAT_LOCALCAMP_LOCALCAM go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CANDIDATURAPOLITICA') and o.name = 'FK_CANDIDAT_PUBLICIDA_PUBLICID') alter table CANDIDATURAPOLITICA drop constraint FK_CANDIDAT_PUBLICIDA_PUBLICID go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('COLIGACOES') and o.name = 'FK_COLIGACO_CADASTROD_CADASTRO') alter table COLIGACOES drop constraint FK_COLIGACO_CADASTROD_CADASTRO go if exists (select 1

15

from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CONTABILIDADE') and o.name = 'FK_CONTABIL_CONTROLED_DOACOESC') alter table CONTABILIDADE drop constraint FK_CONTABIL_CONTROLED_DOACOESC go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('CONTABILIDADE') and o.name = 'FK_CONTABIL_DESPESASV_DESPESAS') alter table CONTABILIDADE drop constraint FK_CONTABIL_DESPESASV_DESPESAS go if exists (select 1 from sys.sysreferences r join sys.sysobjects o on (o.id = r.constid and o.type = 'F') where r.fkeyid = object_id('DESPESAS') and o.name = 'FK_DESPESAS_DESPESASH_HOTEIS') alter table DESPESAS drop constraint FK_DESPESAS_DESPESASH_HOTEIS go if exists (select 1 from sysobjects where id = object_id('BAIRRO') and type = 'U') drop table BAIRRO go if exists (select 1 from sysindexes where id = object_id('CADASTROPESSOAS')

and name = 'CARGOSIMPORTANTES_FK' and indid > 0

16

and indid < 255) drop index CADASTROPESSOAS.CARGOSIMPORTANTES_FK go if exists (select 1 from sysindexes where id = object_id('CADASTROPESSOAS')

and name = 'CIDADESEESTADOSVISITADOS_FK' and indid > 0 and indid < 255) drop index CADASTROPESSOAS.CIDADESEESTADOSVISITADOS_FK go if exists (select 1 from sysindexes where id = object_id('CADASTROPESSOAS')

and name = 'BAIRROSVISITADOS_FK' and indid > 0 and indid < 255) drop index CADASTROPESSOAS.BAIRROSVISITADOS_FK go if exists (select 1 from sysobjects where id = object_id('CADASTROPESSOAS') and type = 'U') drop table CADASTROPESSOAS go if exists (select 1 from sysindexes where id = object_id('CANDIDATURAPOLITICA')

and name = 'COLIGACAOPARTIDO_FK'

17

and indid > 0 and indid < 255) drop index CANDIDATURAPOLITICA.COLIGACAOPARTIDO_FK go if exists (select 1 from sysindexes where id = object_id('CANDIDATURAPOLITICA')

and name = 'LOCALCAMPANHA_FK' and indid > 0 and indid < 255) drop index CANDIDATURAPOLITICA.LOCALCAMPANHA_FK go if exists (select 1 from sysindexes where id = object_id('CANDIDATURAPOLITICA')

and name = 'CONTABILIDADETOTAL_FK' and indid > 0 and indid < 255) drop index CANDIDATURAPOLITICA.CONTABILIDADETOTAL_FK go if exists (select 1 from sysindexes where id = object_id('CANDIDATURAPOLITICA')

and name = 'PUBLICIDADE_UTILIZADA_FK' and indid > 0 and indid < 255) drop index CANDIDATURAPOLITICA.PUBLICIDADE_UTILIZADA_FK go if exists (select 1

18

from sysobjects where id = object_id('CANDIDATURAPOLITICA') and type = 'U') drop table CANDIDATURAPOLITICA go if exists (select 1 from sysobjects where id = object_id('CARGOSDECONFIANCA') and type = 'U') drop table CARGOSDECONFIANCA go if exists (select 1 from sysobjects where id = object_id('CIDADE') and type = 'U') drop table CIDADE go if exists (select 1 from sysindexes where id = object_id('COLIGACOES')

and name = 'CADASTRODECOLIGADOS_FK' and indid > 0 and indid < 255) drop index COLIGACOES.CADASTRODECOLIGADOS_FK go if exists (select 1 from sysobjects where id = object_id('COLIGACOES') and type = 'U')

19

drop table COLIGACOES go if exists (select 1 from sysindexes where id = object_id('CONTABILIDADE')

and name = 'CONTROLEDEDOACOES_FK' and indid > 0 and indid < 255) drop index CONTABILIDADE.CONTROLEDEDOACOES_FK go if exists (select 1 from sysindexes where id = object_id('CONTABILIDADE')

and name = 'DESPESASVARIADAS_FK' and indid > 0 and indid < 255) drop index CONTABILIDADE.DESPESASVARIADAS_FK go if exists (select 1 from sysobjects where id = object_id('CONTABILIDADE') and type = 'U') drop table CONTABILIDADE go if exists (select 1 from sysindexes where id = object_id('DESPESAS')

and name = 'DESPESASHOTEL_FK' and indid > 0

20

and indid < 255) drop index DESPESAS.DESPESASHOTEL_FK go if exists (select 1 from sysobjects where id = object_id('DESPESAS') and type = 'U') drop table DESPESAS go if exists (select 1 from sysobjects where id = object_id('DOACOESCAMPANHA') and type = 'U') drop table DOACOESCAMPANHA go if exists (select 1 from sysobjects where id = object_id('HOTEIS') and type = 'U') drop table HOTEIS go if exists (select 1 from sysobjects where id = object_id('LOCALCAMPANHA') and type = 'U') drop table LOCALCAMPANHA go if exists (select 1 from sysobjects

21

where id = object_id('PUBLICIDADE') and type = 'U') drop table PUBLICIDADE go /*==============================================================*/ /* Table: BAIRRO */

/*==============================================================*/ create table BAIRRO ( BAIR_COD BAIR_NOME int varchar(45) not null, not null,

constraint PK_BAIRRO primary key nonclustered (BAIR_COD) ) go /*==============================================================*/ /* Table: CADASTROPESSOAS */

/*==============================================================*/ create table CADASTROPESSOAS ( CAD_COD BAIR_COD CID_COD CARG_COD CAD_NOME CAD_ENDER CAD_NUM CAD_COMPL CAD_CEP int int int int varchar(45) varchar(50) varchar(10) varchar(10) varchar(9) not null, null, null, null, not null, not null, not null, not null, not null, not null, not null, not null,

CAD_TITULOELEITOR

varchar(15)

CAD_ZONAELEITORAL int CAD_FONERES varchar(16)

22

CAD_FONECOM CAD_FONECEL CAD_EMAIL

varchar(16) varchar(16) varchar(50) datetime

not null, not null, not null, not null,

CAD_DATACADASTRO CAD_NASC CAD_SEXO datetime char(1)

not null, not null, not null,

CAD_ESTADOCIVIL

char(1)

constraint PK_CADASTROPESSOAS primary key nonclustered (CAD_COD) ) go /*==============================================================*/ /* Index: BAIRROSVISITADOS_FK */

/*==============================================================*/ create index BAIRROSVISITADOS_FK on CADASTROPESSOAS ( BAIR_COD ASC ) go /*==============================================================*/ /* Index: CIDADESEESTADOSVISITADOS_FK */

/*==============================================================*/ create index CIDADESEESTADOSVISITADOS_FK on CADASTROPESSOAS ( CID_COD ASC ) go /*==============================================================*/ /* Index: CARGOSIMPORTANTES_FK */

/*==============================================================*/ create index CARGOSIMPORTANTES_FK on CADASTROPESSOAS ( CARG_COD ASC

23

) go /*==============================================================*/ /* Table: CANDIDATURAPOLITICA */

/*==============================================================*/ create table CANDIDATURAPOLITICA ( CANDIDATURA_COD PUBLI_COD LOCAIS_COD COLIG_COD int int int int null, null, null, null, not null, not null, not null, not null,

CONTABILIDADE_COD int CANDIDATURA_TIPO varchar(20)

CANDIDATURA_LOCAL varchar(12) CANDIDATURA_DATA datetime

constraint PK_CANDIDATURAPOLITICA primary key nonclustered (CANDIDATURA_COD) ) go /*==============================================================*/ /* Index: PUBLICIDADE_UTILIZADA_FK */

/*==============================================================*/ create index PUBLICIDADE_UTILIZADA_FK on CANDIDATURAPOLITICA ( PUBLI_COD ASC ) go /*==============================================================*/ /* Index: CONTABILIDADETOTAL_FK */

/*==============================================================*/ create index CONTABILIDADETOTAL_FK on CANDIDATURAPOLITICA ( CONTABILIDADE_COD ASC

24

) go

/*==============================================================*/ /* Index: LOCALCAMPANHA_FK */

/*==============================================================*/ create index LOCALCAMPANHA_FK on CANDIDATURAPOLITICA ( LOCAIS_COD ASC ) go /*==============================================================*/ /* Index: COLIGACAOPARTIDO_FK */

/*==============================================================*/ create index COLIGACAOPARTIDO_FK on CANDIDATURAPOLITICA ( COLIG_COD ASC ) go /*==============================================================*/ /* Table: CARGOSDECONFIANCA */

/*==============================================================*/ create table CARGOSDECONFIANCA ( CARG_COD CARG_NOME int varchar(20) not null, not null, not null,

CARG_DATAADMISSAO datetime

constraint PK_CARGOSDECONFIANCA primary key nonclustered (CARG_COD) ) go /*==============================================================*/ /* Table: CIDADE */

25

/*==============================================================*/ create table CIDADE ( CID_COD CID_NOME CID_ESTADO int varchar(45) char(2) not null, not null, not null,

constraint PK_CIDADE primary key nonclustered (CID_COD) ) go /*==============================================================*/ /* Table: COLIGACOES */

/*==============================================================*/ create table COLIGACOES ( COLIG_COD CAD_COD COLIG_PARTIDO COLIG_OBS int int not null, null, varchar(8) varchar(200) not null, not null,

constraint PK_COLIGACOES primary key nonclustered (COLIG_COD) ) go /*==============================================================*/ /* Index: CADASTRODECOLIGADOS_FK */

/*==============================================================*/ create index CADASTRODECOLIGADOS_FK on COLIGACOES ( CAD_COD ASC ) go /*==============================================================*/ /* Table: CONTABILIDADE */

/*==============================================================*/

26

create table CONTABILIDADE ( CONTABILIDADE_COD int DESP_COD DOAC_COD int int null, null, not null,

constraint PK_CONTABILIDADE primary key nonclustered (CONTABILIDADE_COD) ) go /*==============================================================*/ /* Index: DESPESASVARIADAS_FK */

/*==============================================================*/ create index DESPESASVARIADAS_FK on CONTABILIDADE ( DESP_COD ASC ) go /*==============================================================*/ /* Index: CONTROLEDEDOACOES_FK */

/*==============================================================*/ create index CONTROLEDEDOACOES_FK on CONTABILIDADE ( DOAC_COD ASC ) go /*==============================================================*/ /* Table: DESPESAS */

/*==============================================================*/ create table DESPESAS ( DESP_COD HOTEL_COD DESP_ALUGUEL DESP_MATCAMP int int numeric numeric not null, null, not null, not null,

27

DESP_FUNC DESP_HOSPED DESP_PUBLIC DESP_ALIMENT

numeric numeric numeric numeric

not null, not null, not null, not null,

constraint PK_DESPESAS primary key nonclustered (DESP_COD) ) go /*==============================================================*/ /* Index: DESPESASHOTEL_FK */

/*==============================================================*/ create index DESPESASHOTEL_FK on DESPESAS ( HOTEL_COD ASC ) go /*==============================================================*/ /* Table: DOACOESCAMPANHA */

/*==============================================================*/ create table DOACOESCAMPANHA ( DOAC_COD DOAC_TERC DOAC_EMPRES int numeric numeric not null, not null, not null, not null,

DOAC_OUTRASFONTES numeric

constraint PK_DOACOESCAMPANHA primary key nonclustered (DOAC_COD) ) go /*==============================================================*/ /* Table: HOTEIS */

/*==============================================================*/ create table HOTEIS (

28

HOTEL_COD HOTEL_NOME

int varchar(25) datetime varchar(16)

not null, not null, not null, not null, not null,

HOTEL_DATAHOSP HOTEL_FONE

HOTEL_CONTATOAPOIO varchar(30)

constraint PK_HOTEIS primary key nonclustered (HOTEL_COD) ) go /*==============================================================*/ /* Table: LOCALCAMPANHA */

/*==============================================================*/ create table LOCALCAMPANHA ( LOCAIS_COD LOCAIS_ESTADO LOCAIS_CIDADE LOCAIS_BAIRRO LOCAIS_COMICIO int not null, varchar(20) varchar(45) varchar(45) varchar(45) not null, not null, not null, not null,

constraint PK_LOCALCAMPANHA primary key nonclustered (LOCAIS_COD) ) go /*==============================================================*/ /* Table: PUBLICIDADE */

/*==============================================================*/ create table PUBLICIDADE ( PUBLI_COD int not null, varchar(500) varchar(500) varchar(30) varchar(30) null, null, null, null,

PUBLI_PROMESSAS PUBLI_DISCURSOS PUBLI_FOTOS PUBLI_VIDEOS

29

constraint PK_PUBLICIDADE primary key nonclustered (PUBLI_COD) ) go alter table CADASTROPESSOAS add constraint FK_CADASTRO_BAIRROSVI_BAIRRO foreign key (BAIR_COD) references BAIRRO (BAIR_COD) go alter table CADASTROPESSOAS add constraint FK_CADASTRO_CARGOSIMP_CARGOSDE foreign key (CARG_COD) references CARGOSDECONFIANCA (CARG_COD) go alter table CADASTROPESSOAS add constraint FK_CADASTRO_CIDADESEE_CIDADE foreign key (CID_COD) references CIDADE (CID_COD) go alter table CANDIDATURAPOLITICA add constraint FK_CANDIDAT_COLIGACAO_COLIGACO foreign key (COLIG_COD) references COLIGACOES (COLIG_COD) go alter table CANDIDATURAPOLITICA add constraint FK_CANDIDAT_CONTABILI_CONTABIL foreign key (CONTABILIDADE_COD) references CONTABILIDADE (CONTABILIDADE_COD) go alter table CANDIDATURAPOLITICA add constraint FK_CANDIDAT_LOCALCAMP_LOCALCAM foreign key (LOCAIS_COD) references LOCALCAMPANHA (LOCAIS_COD) go alter table CANDIDATURAPOLITICA

30

add constraint FK_CANDIDAT_PUBLICIDA_PUBLICID foreign key (PUBLI_COD) references PUBLICIDADE (PUBLI_COD) go alter table COLIGACOES add constraint FK_COLIGACO_CADASTROD_CADASTRO foreign key (CAD_COD) references CADASTROPESSOAS (CAD_COD) go alter table CONTABILIDADE add constraint FK_CONTABIL_CONTROLED_DOACOESC foreign key (DOAC_COD) references DOACOESCAMPANHA (DOAC_COD) go alter table CONTABILIDADE add constraint FK_CONTABIL_DESPESASV_DESPESAS foreign key (DESP_COD) references DESPESAS (DESP_COD) go alter table DESPESAS add constraint FK_DESPESAS_DESPESASH_HOTEIS foreign key (HOTEL_COD) references HOTEIS (HOTEL_COD) go

31

12. COMANDOS UTILIZADOS PARA MANIPULAR DADOS

A linguagem para Manipulao de Dados (DML Data Manipulation Language) apresenta os comandos para a insero ( INSERT), atualizao (UPDATE, excluso (DELETE) e seleo (SELECT) contidos nestas tabelas. Deseja-se possibilitar a sua utilizao em uma situao real, isto , para a manipulao do banco de dados Controle de campanha Poltica, para a visualizao e manipulao dos bancos de dados mantidos pelo MS SQL server.

13. PROTTIPO

O prottipo traz um enorme retorno com a eliminao de falhas na comunicao entre seus pontos de atuao trazendo assim maior agilidade e confiabilidade na elaborao de seus servios. Figura 3

32

Figura 3: Prottipo

33

14. CONCLUSO

Para consecuo deste trabalho foi realizado o estudo sobre integrao de bancos de dados, com o objetivo de enfocar a soluo do problema encontrado no estudo. Como conseqncia obter uma soluo confivel e que fornea dados com qualidade e consistentes. O estudo realizado demonstrou que a integrao de dados pode ser muito importante para uma campanha e que durante a integrao de dados surgem diversos problemas no identificados nas fases anteriores do projeto do banco de dados. A proposta final, decorrente da anlise, apresenta uma soluo que respeita os recursos financeiros de uma campanha poltica esperado. sem, entretanto, comprometer o resultado final

34

15. REFERNCIAS BIBLIOGRFICAS

Oliveira, Celso H. P. de (2002), SQL Curso Prtico, Novatec. ELMASRI, R.; NAVATHE S. B. Sistemas de Banco de Dados: Fundamentos e Aplicaes. 3.ed. Addison Wesley Longman, 2002. PowerDesigner, Sybase. Disponvel em: http://www.sybase.com/products/modelingdevelopment/powerdesigner Microsoft SQL Server, Microsoft. Disponvel em: http://www.microsoft.com/sqlserver/2008/pt/br/default.aspx