A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Comunicação Digital – Elementos de TI Introdução a Banco de Dados com exercícios de aplicação: implementação e testes Prof.: Sandro Rigo.

Apresentações semelhantes


Apresentação em tema: "Comunicação Digital – Elementos de TI Introdução a Banco de Dados com exercícios de aplicação: implementação e testes Prof.: Sandro Rigo."— Transcrição da apresentação:

1 Comunicação Digital – Elementos de TI Introdução a Banco de Dados com exercícios de aplicação: implementação e testes Prof.: Sandro Rigo

2 Conceitos de Banco de dados Roteiro: Revisão de conceitos básicos Caso de estudo: filmes Estrutura proposta em aula Implemementação Exercícios

3 Revisão de conceitos básicos Dados: indicações de fatos que podem ser armazenados e tratados individualmente. Base de dados: conjunto de dados relacionados entre si com alguma lógica particular. Sistema Gerenciador de Banco de Dados (SGBD): aplicação integrada contendo funções necessárias para a criação, manutenção e gerência de bases de dados.

4 Revisão de conceitos básicos cf. Matoso

5 Revisão de conceitos básicos Componentes: Nome do CD Data do CD gênero número de trilhas Nome da banda Componentes da banda discografia notas Nome do CD Data do CD gênero número de trilhas Nome da banda campo registro tabelas chave primária Chave estrangeira

6 Conceitos Básicos de Bancos de Dados Campos (atributos): elementos unitários de um agrupamento de dados, representando atributos de entidade do mundo real Registro (tupla): conjunto único de campos, representando entidade do mundo real Tabela : organização de campos e de registros Chave: elemento (campo) usado na identificação de registros em tabelas, ou na geração de índices Chave-primária: utilizada na identificação de registros em uma tabela Chave-estrangeira: utilizada para indicação de relações entre tabelas

7 Linguagem de consulta Permite: - a descrição de tabelas, com indicações de campos e tipo de dado para cada campo - a aplicação de operações de álgebra relacional, como seleção, projeção ou junção. Conceitos Básicos de Bancos de Dados

8 Linguagem de consulta

9 Caso de estudo: Exercício: Tratar a modelagem de um conjunto de tabelas e de operações para uma base de dados de filmes produzidos por alunos de um curso de comunicação digital

10 Resumo das propostas Tabela filmes filme CampoTipoNuloPadrão id int(11)Não nome varchar(80)Não tipo int(11)Não 0 ano int(11)Não 0 duracao tinyint(4)Não 0 produtora int(11)Não 0 diretor int(11)Não 0 site varchar(160)Não genero int(11)Não 0 roteirista int(11)Não 0 sinopse varchar(255)Não cartaz int(11)Não 0 fotos int(11)Não 0 curiosidades varchar(200)Não cenas int(11)Não 0 nota floatNão 0 lancamento dateNão professor_resp int(11)Não 0 classificacao tinyint(4)Não 0 justificativa varchar(120)Não origem varchar(40)Não

11 Resumo das propostas Tabelas genero e tipo CampoTipoNuloPadrão id int(11)Não nome varchar(30)Não observacoes varchar(255)Não CampoTipoNuloPadrão id int(11)Não nome varchar(30)Não obs varchar(255)Não

12 Resumo das propostas tabela equipe CampoTipoNuloPadrão id int(11)Não nome varchar(60)Não nacionalidade varchar(60)Não data_nascim dateNão premios varchar(120)Não naturalidade varchar(60)Não mini_biografia varchar(255)Não home_page varchar(120)Não varchar(120)Não sexo char(1)Não

13 Resumo das propostas tabela funcao CampoTipoNuloPadrão id int(11)Não nome varchar(60)Não obs varchar(255)Não

14 Resumo das propostas Tabelas de ligação filme-atores Equipe-funcao CampoTipoNuloPadrão id_equipe int(11)Não 0 id_funcao int(11)Não 0 CampoTipoNuloPadrão id_filme int(11)Não 0 id_atores int(11)Não 0

15 Resumo das propostas

16 Possibilidades: consulta de filmes por nome consulta de filmes por diretor/atores/.... consulta de atores por filme consulta de filmografia acesso a cartaz/imagens/cenas outras...

17 Implementação SGBD: MySql interface web phpMyAdmin

18 Implementação Etapa 1: criação da base de dados

19 Implementação CREATE TABLE `filme` (`id` INT NOT NULL AUTO_INCREMENT, `nome` VARCHAR( 80 ) NOT NULL, `tipo` INT NOT NULL, `ano` INT NOT NULL, `duracao` TINYINT NOT NULL, `produtora` INT NOT NULL, `diretor` INT NOT NULL, `site` VARCHAR( 160 ) NOT NULL, `genero` INT NOT NULL, `roteirista` INT NOT NULL, `sinopse` VARCHAR( 255 ) NOT NULL, `cartaz` INT NOT NULL, `fotos` INT NOT NULL, `curiosidades` VARCHAR( 200 ) NOT NULL, `cenas` INT NOT NULL, `nota` FLOAT NOT NULL, `lancamento` DATE NOT NULL, `professor_resp` INT NOT NULL, `classificacao` TINYINT NOT NULL, `justificativa` VARCHAR( 120 ) NOT NULL, `origem` VARCHAR( 40 ) NOT NULL, UNIQUE (`id` ));

20 Implementação Etapa 1: criação da base de dados

21 Implementação Etapa 1: criação da base de dados

22 Implementação CREATE TABLE `genero` (`id` INT NOT NULL AUTO_INCREMENT, `nome` VARCHAR( 30 ) NOT NULL, `observacoes` VARCHAR( 255 ) NOT NULL, PRIMARY KEY ( `id` ) ); CREATE TABLE `tipo` (`id` INT NOT NULL AUTO_INCREMENT, `nome` VARCHAR( 30 ) NOT NULL, `obs` VARCHAR( 255 ) NOT NULL, PRIMARY KEY ( `id` ) ); CREATE TABLE `funcao` (`id` INT NOT NULL AUTO_INCREMENT, `nome` VARCHAR( 60 ) NOT NULL, `obs` VARCHAR( 255 ) NOT NULL, PRIMARY KEY ( `id` ) );

23 Implementação Etapa 1: criação da base de dados

24 Implementação CREATE TABLE `equipe` (`id` INT NOT NULL AUTO_INCREMENT, `nome` VARCHAR( 60 ) NOT NULL, `nacionalidade` VARCHAR( 60 ) NOT NULL, `data_nascim` DATE NOT NULL, `premios` VARCHAR( 120 ) NOT NULL, `naturalidade` VARCHAR( 60 ) NOT NULL, `mini_biografia` VARCHAR( 255 ) NOT NULL, `home_page` VARCHAR( 120 ) NOT NULL, ` ` VARCHAR( 120 ) NOT NULL, `sexo` CHAR( 1 ) NOT NULL, PRIMARY KEY ( `id` ) );

25 Implementação Etapa 1: criação da base de dados

26 Implementação Etapa 1: criação da base de dados

27 Implementação Etapa 1: criação da base de dados

28 Implementação Etapa 2: inserção de dados

29 Implementação INSERT INTO `tipo` ( `id`, `nome`, `obs` ) VALUES ('', 'curta', 'observações para o curta' ), ('', 'longa', 'observações para o longa' );

30 Implementação Etapa 3: consulta de dados

31 Implementação Etapa 3: consulta de dados

32 Implementação Etapa 3: consulta de dados

33 Implementação Etapa 4: edição de dados

34 Implementação UPDATE `genero` SET `observacoes` = 'observações para o gênero comédia' WHERE `id` = '2' LIMIT 1 ;

35 Implementação comando SQL: INSERT INTO `filme` ( `id`, `nome`, `tipo`, `ano`, `duracao`, `produtora`, `diretor`, `site`, `genero`, `roteirista`, `sinopse`, `cartaz`, `fotos`, `curiosidades`, `cenas`, `nota`, `lancamento`, `professor_resp`, `classificacao`, `justificativa`, `origem` ) VALUES ('', 'nome filme tres', '2', '2002', '120', '0', '4', 'site filme tres', '4', '2', 'sinopse', '0', '0', 'curiosidades', '0', '10', ' ', '0', '0', 'justificativa', 'brasileira' ), ('', 'nome filme quatro', '2', '2005', '110', '0', '1', 'site', '4', '1', 'sinopse', '0', '0', 'curiosidades', '0', '0', ' ', '0', '0', 'justificativa', 'brasileiro' );

36 Implementação...mais consultas

37 Implementação...mais consultas

38 Implementação...mais consultas

39 Implementação...mais consultas

40 Implementação funcao 1diretor de cenaobs. para diretor 2atorobs. para ator 3roteiristaobs. para roteirista 4produtorobs. 5diretor de arteobs. 6diretor de fotografiaobs. gênero 1dramaobservações para o gênero drama 2comédiaobservações para o gênero comédia 3aventuraobservações para o gênero aventura 4musicalobservações para o gênero musical tipo 1curtaobservações para o curta 2longaobservações para o longa equipefuncao filmeatores

41 Implementação...mais consultas

42 Implementação SELECT e.nome, f.nome FROM equipe e, equipe_funcao ef, funcao f WHERE e.id = ef.id_equipe AND f.id = ef.id_funcao

43 Implementação...mais consultas

44 Implementação SELECT e.nome, f.nome FROM equipe e, filme f, filme_atores fa WHERE e.id = fa.id_atores AND f.id = fa.id_filme AND e.nome like 'nome 4'

45 Implementação...mais consultas

46 Implementação...mais consultas

47 Implementação...

48 Implementação

49 -- phpMyAdmin SQL Dump -- version rc Servidor: localhost -- Tempo de Generação: Abr 14, 2005 at 03:01 PM -- Versão do Servidor: Versão do PHP: Banco de Dados: `elti_filme` Estrutura da tabela `equipe` -- CREATE TABLE `equipe` ( `id` int(11) NOT NULL auto_increment, `nome` varchar(60) NOT NULL default '', `nacionalidade` varchar(60) NOT NULL default '', `data_nascim` date NOT NULL default ' ', `premios` varchar(120) NOT NULL default '', `naturalidade` varchar(60) NOT NULL default '', `mini_biografia` varchar(255) NOT NULL default '', `home_page` varchar(120) NOT NULL default '', ` ` varchar(120) NOT NULL default '', `sexo` char(1) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; Extraindo dados da tabela `equipe` Estrutura da tabela `filme` -- CREATE TABLE `filme` ( `id` int(11) NOT NULL auto_increment, `nome` varchar(80) NOT NULL default '', `tipo` int(11) NOT NULL default '0', `ano` int(11) NOT NULL default '0', `duracao` tinyint(4) NOT NULL default '0', `produtora` int(11) NOT NULL default '0', `diretor` int(11) NOT NULL default '0', `site` varchar(160) NOT NULL default '', `genero` int(11) NOT NULL default '0', `roteirista` int(11) NOT NULL default '0', `sinopse` varchar(255) NOT NULL default '', `cartaz` int(11) NOT NULL default '0', `fotos` int(11) NOT NULL default '0', `curiosidades` varchar(200) NOT NULL default '', `cenas` int(11) NOT NULL default '0', `nota` float NOT NULL default '0', `lancamento` date NOT NULL default ' ', `professor_resp` int(11) NOT NULL default '0', `classificacao` tinyint(4) NOT NULL default '0', `justificativa` varchar(120) NOT NULL default '', `origem` varchar(40) NOT NULL default '', UNIQUE KEY `id` (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; Extraindo dados da tabela `filme` Estrutura da tabela `funcao` -- CREATE TABLE `funcao` ( `id` int(11) NOT NULL auto_increment, `nome` varchar(60) NOT NULL default '', `obs` varchar(255) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; Extraindo dados da tabela `funcao` Estrutura da tabela `genero` -- CREATE TABLE `genero` ( `id` int(11) NOT NULL auto_increment, `nome` varchar(30) NOT NULL default '', `observacoes` varchar(255) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; Extraindo dados da tabela `genero` Estrutura da tabela `imagens` -- CREATE TABLE `imagens` ( `id` int(11) NOT NULL auto_increment, `legenda` varchar(120) NOT NULL default '', `imagem` varchar(160) NOT NULL default '', `largura` int(11) NOT NULL default '0', `altura` int(11) NOT NULL default '0', `tamanho` int(11) NOT NULL default '0', `creditos` int(11) NOT NULL default '0', `formato` varchar(60) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; Extraindo dados da tabela `imagens` Estrutura da tabela `tipo` -- CREATE TABLE `tipo` ( `id` int(11) NOT NULL auto_increment, `nome` varchar(30) NOT NULL default '', `obs` varchar(255) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=1 ; Extraindo dados da tabela `tipo` --

50 Implementação 1 nome 1 nacionalidade nenhum nacionalidade 1 mini biografia de M 2 nome 2 nacionalidade prêmio tal porto alegre / RS biografia 2 M 3 nome 3 brasileira prêmio tal naturalidade biografia F 4 nome 4 brasileira prêmio tal naturalidade biografia F 1 diretor de cena obs. para diretor 2 ator obs. para ator 3 roteirista obs. para roteirista 4 produtor obs. 5 diretor de arte obs. 6 diretor de fotografia obs. 1 drama observações para o gênero drama 2 comédia observações para o gênero comédia 3 aventura observações para o gênero aventura 4 musical observações para o gênero musical 1 curta observações para o curta 2 longa observações para o longa


Carregar ppt "Comunicação Digital – Elementos de TI Introdução a Banco de Dados com exercícios de aplicação: implementação e testes Prof.: Sandro Rigo."

Apresentações semelhantes


Anúncios Google