Buscar

IMPLEMENTAÇÃO DE BANCO DE DADOS ( SIMULADO)

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 33 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Aluno: FABIO 
	
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.: 
	
	
		1.
		Considere o texto a seguir e complete as lacunas, com as expressões constantes nas alternativas, respeitando a correlação sequencial em que estão dispostas.
Uma ..................... é uma coluna ou uma combinação de colunas cujos valores distinguem uma linha das demais, dentro de uma tabela.
Uma ...................... é uma coluna ou uma combinação de colunas cujos valores aparecem, necessariamente, na ........................ de uma tabela. 
Em alguns casos, mais de uma coluna ou combinações de colunas podem servir para distinguir uma linha das demais. Uma das colunas (ou combinação de colunas) é escolhida como ..................... As demais colunas ou combinações são denominadas ........................
A seqüência correta encontra-se apenas em:
	
	
	
	
	
	Chave primária; chave primária; chave primária; super-chave; chaves secundárias.
	
	
	Chave primária; chave estrangeira; chave primária; chave primária; chaves estrangeiras.
	
	
	Chave primária; super-chave; chave primária; chave candidata; chaves secundárias.
	
	
	Chave primária; chave estrangeira; chave primária; chave secundária; chaves alternativas.
	
	 
	Chave primária; chave estrangeira; chave primária; chave primária; chaves alternativas.
	
	
	
		2.
		(CONSULPLAN - 2012) Dentre os objetivos da implementação de bancos de dados, um visa solucionar um problema que ocorre quando aplicações diferentes operam sobre os mesmos dados, armazenados em arquivos diferentes. Esse problema é conhecido por:
	
	
	
	
	 
	Redundância de dados.
	
	
	Dependência de dados.
	
	
	Integridade de dados.
	
	
	Replicação de dados.
	
	
	Consistência de dados.
	
	
	
		3.
		É responsável por garantir a Integridade Referencial:
	
	
	
	
	 
	Chave Estrangeira
	
	
	Chave Candidata
	
	
	Chave Secundária
	
	
	Chave Primária
	
	
	Chave de Atributo
	
	
	
		4.
		Uma chave candidata é:
	
	
	
	
	
	um grupo de valores atômicos a partir dos quais um ou mais atributos (ou colunas) retiram seus valores reais.
	
	
	um conjunto de atributos que descrevem as características dos elementos a serem modelados.
	
	
	um conjunto de valores que cada atributo, definido no esquema, assume em um determinado instante, formando o conjunto de tuplas.
	
	 
	uma ou mais colunas que identificam univocamente a relação, porém não fazem parte da chave primária.
	
	
	uma coluna ou uma combinação de colunas, cujos valores aparecem necessariamente na chave primária de uma tabela.
	
	
	
		5.
		Considere o esquema de banco de dados ilustrado na figura abaixo em que as chaves primárias estão sublinhadas.
Podemos afirmar que a coluna cod_curso da tabela Aluno é _____________ da tabela Curso na coluna cod_curso.
Assinale a alternativa que contém a sentença que completa a frase acima:
	
	
	
	
	
	Super Chave
	
	
	Chave
	
	
	Chave primária
	
	 
	Chave estrangeira
	
	
	Chave candidata
	
	
		6.
		Os conceitos de banco de dados relacional refletem o nível de abstração dos dados. Desta forma, marque a alternativa que se refere à instância da entidade.
	
	
	
	
	
	É o conjunto de opções de preenchimento do atributo.
	
	 
	Pode ser modificado com o uso dos comandos DDL.
	
	
	Toda entidade deve possui chave primária.
	
	 
	Pode ser considerado como o resultado da aplicação do SELECT.
	
	
	Uma chave estrangeira é sempre uma chave primária em outra tabela.
	
	
	
		7.
		Relacione as colunas abaixo:
(1) Tabela bidimensional, composta por linhas e colunas de dados        
(2) Coluna                                                                                          
(3) Linha                                                                                               
(4) Conjunto de valores de um atributo
(5) Nomes das relações seguidas pelos nomes dos atributos, com chaves primária e estrangeiras identificadas
 
( ) Esquema
( ) Atributo
( ) Tupla
( ) Relação
( ) Domínio
 
A sequência correta está representada na opção:
 
	
	
	
	
	
	4,2,3,1,5
	
	 
	5,2,3,1,4
	
	
	5,2,1,3,4
	
	
	5,3,2,1,4
	
	
	5,2,3,4,1
	
	
	
		8.
		Um atributo de uma tabela que é chave primária em alguma outra tabela é denominado:
	
	
	
	
	
	Chave candidata
	
	
	Chave externa
	
	
	Chave simples
	
	 
	Chave estrangeira
	
	
	Não existe atributo com esta característica
	Aluno: FABIO 
	
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.
	
	
	
		1.
		Admitindo as relações abaixo especificadas, marque a alternativa que representa a consulta em álgebra relacional que responde corretamente a seguinte pergunta: quais os nomes dos alunos e seus respectivos cursos?
Alunos(matricula, nome, endereco, cpf, cod_curso)
Cursos(codigo, nome_curso)
	
	
	
	
	
	ᴨnome, nome_curso(Alunos X Cursos)
	
	
	ᴨnome, nome_curso(σmatricula=codigo (Alunos X Cursos))
	
	
	σnome, nome_curso(ᴨcod_curso=codigo (Alunos X Cursos))
	
	 
	ᴨnome, nome_curso(σcod_curso=codigo (Alunos X Cursos))
	
	 
	ᴨnome, nome_curso(σcod_curso=codigo (Alunos))
	
	
		2.
		Considere as relações:
PROFESSOR (matriculaprf, nomeprf, titulacao, anoadmissao)
MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
A consulta em álgebra relacional que responde a questão "Quem são os professores (nome e matrícula) que ministram a disciplina Implementação de Bancos de Dados" está corretamente representada em:
	
	
	
	
	
	p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRAcodigo = ⋈codigodisciplina(DISCIPLINA)))
	
	 
	p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula (MINISTRA codigo =  ⋈codigodisciplina(snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA)))
	
	
	Não existe consulta que responda a esta questão.
	
	
	p matriculaprf, nomeprf (PROFESSORmatriculaprf = ⋈matricula MINISTRA)
	
	
	p matriculaprf, nomeprf (PROFESSOR matriculaprf = ⋈matricula  (snomedisciplina = "Implementação de Bancos de Dados" (DISCIPLINA))
	
	
	
		3.
		Uma linguagem de consulta procedural, onde o objetivo fundamental é permitir a escrita de expressões relacionais é denominada de álgebra relacional. Com suas operações fundamentais é possível exprimir qualquer consulta nesta linguagem. Sendo assim, para apresentar os dados de acordo com a tabela abaixo, marque a alternativa correta que descreve a álgebra a ser utilizada.
	Produto.Nome
	Produto.Qualidade
	Estoque.Qtde
	Laranja
	1
	100
	Laranja
	2
	150
	Uva
	1
	200
	Uva
	2
	130
	Trigo
	2
	240
	Pêssego
	1
	260
	Pêssego
	2
	190
	
	
	
	
	 
	πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque))
	
	
	σProduto.Cod_Prod = Estoque.Cod_Prod(πNome, Qualidade, Qtde)
	
	
	πNome, Qualidade, Qtde
	
	
	πNome, Qualidade, Qtde(σProduto.Cod_Prod = Estoque.Cod_Prod)
	
	
	σProduto.Cod_Prod = Estoque.Cod_Prod(Produto X Estoque)
	
	
		4.
		Em relação a álgebra linear é correto afirmar que:
     I - A operação de projeção é aplicada sobre apenas uma relação visando selecionar um subconjunto de tuplas (com todos os seus atributos).
     II  O produto cartesiano é uma operação binária que combina todas as tuplas de duas tabelas.
     III - A operaçãode seleção é aplicada sobre apenas uma relação de visando projetar os atributos de uma relação de acordo com uma lista de atributos oferecida.
Estão corretas:
	
	
	
	
	 
	Somente a II
	
	
	II e III
	
	
	I e III
	
	
	Somente III
	
	
	Somente I
	
	
	
		5.
		Considere a relação:
FILME (nome, diretor, tempoduracao, genero, ano)
A consulta em álgebra relacional que retorna o nome e o ano de todos os filmes de ação com tempo de duração entre 120 e 180 minutos.
	
	
	
	
	 
	p nome, ano (s(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
	
	 
	p nome, ano (s(genero = "ação" AND tempoduracao >= 120 OR tempoduracao <= 180) (FILME) )
	
	
	p nome, ano (s(genero = "ação" OR tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
	
	
	 p nome, ano (p(genero = "ação" AND tempoduracao >= 120 AND tempoduracao <= 180) (FILME) )
 
	
	
	p nome, ano (s(genero = "ação" AND tempoduracao = 120) (FILME) )
	
	
		6.
		Em relação a álgebra relacional, o operador de _____________ permite combinar seleções e um produto cartesiano em uma só operação.
	
	
	
	
	
	União
	
	 
	Junção
	
	
	Projeção
	
	
	Interseção
	
	
	Diferença
	
	
	
		7.
		A operação da álgebra relacional que recupera linhas em uma tabela é denominada:
	
	
	
	
	
	Projeção
	
	
	Diferença
	
	 
	Seleção
	
	
	Produto cartesiano
	
	
	Junção
	
	
		8.
		Sejam as relações:
 
       T1 =  p nome (s(sexo="FEMININO") and (salário>1500) (EMPREGADO))
 
       T2  = p nome (sdept=5 (EMPREGADO))
 
A relação T3 = T1 - T2 conterá:
	
	
	
	
	
	Nome de todas mulheres que ganham mais do que 1500 ou estão lotadas no departamento 5.
	
	
	Nome de todas mulheres que ganham 1500 e estão lotados no departamento 5.
	
	 
	Nome de todas mulheres que ganham mais do que 1500 e não estão lotadas no departamento 5.
	
	
	Nome de todas mulheres que ganham  mais do 1500
	
	
	Nome de todas mulheres que ganham mais do que 1500 e estão lotadas no departamento 5.
	Aluno: FABIO 
	Matrícula: 
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.: 
	
	
	
		1.
		Para incluir a tupla mostrada abaixo na tabela PACIENTE executaríamos o seguinte comando:
		
	
	
	
	
	INSERT INTO paciente (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
	
	
	INSERT INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
	
	 
	ADD INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
	
	 
	INSERT INTO paciente VALUES (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
	
	
	ADD INTO paciente SET (5430005, 'Beatriz Ferro', '1970-05-28', 'feminino', 'casada');
	
	
		2.
		Assinale a opção que possui o comando CREATE TABLE que cria corretamente a tabela "Alunos", segundo o seguinte esquema de banco de dados: Alunos(matricula, nome, endereco, cod_curso) Cursos(codigo, nome) Admitindo que os campos "matricula" e "codigo" são chaves primárias de suas tabelas e que o campo "cod_curso" é chave estrangeira da tabela "Cursos" na tabela "Alunos".
		
	
	
	
	
	create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula), constraint fk_alunos_cursos foreign key (codigo) references Cursos(cod_curso) )
	
	
	create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
	
	 
	create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
	
	
	create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (nome), constraint fk_alunos_cursos foreign key (cod_curso) references Cursos(codigo) )
	
	
	create table Alunos ( matricula int not null, nome varchar(50) not null, endereco varchar(255) null, cod_curso int not null, constraint pk_alunos primary key (matricula) )
	
	
	
		3.
		Como ficaria o comando SQL para criar a tabela a seguir?
		
	
	
	
	 
	CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) )
	
	
	CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) )
	
	
	CREATE TABLE X_EMPR ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) )
	
	
	CREATE TABLE X_PROD ( CODIGO VARCHAR2(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL UNIQUE, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) )
	
	
	CREATE TABLE X_PROD ( CODIGO NUMBER(5) PRIMARY KEY, DESCRICAO VARCHAR2(40) NOT NULL, QUANTIDADE NUMBER(8), VALOR_UNIT NUMBER(9,2) )
	
	
		4.
		O comando SQL que apaga um tabela é:
 
		
	
	
	
	 
	DROP TABLE
	
	
	DELETE TABLE
	
	
	UPDATE
	
	
	REMOVE TABLE
	
	
	INSERT INTO
	
	
	
		5.
		É uma vantagem de uso da linguagem SQL:
		
	
	
	
	 
	Definição dinâmica dos dados
	
	
	Dependência de fabricante
	
	
	Alto custo de treinamento
	
	
	Dependência de plataforma
	
	
	Visão única dos dados
 
	
	
		6.
		São comandos da categoria de Definição de Dados (DDL):
		
	
	
	
	 
	INSERT / UPDATE / DELETE
	
	
	COMMIT / ROLLBACK
	
	
	SELECT
	
	
	GRANT / REVOKE
	
	 
	CREATE / ALTER / DROP
	
	
	
		7.
		
Na figura é exibida a estrutura da tabela TCC. Deseja-se realizar uma mudança nesta tabela que não permita o cadastro de um TCC contendo o mesmo título que um TCC já cadastrado previamente. Assinale qual a alternativa abaixo realiza esta mudança corretamente:
		
	
	
	
	
	ALTER TABLE TITULO ADD UNIQUE(TCC);
	
	
	ALTER TABLE TCC CHANGE UNIQUE(TITULO);
	
	
	ALTER TABLE TCC ADD TITULO (UNIQUE);
	
	
	ALTER TABLE TCC CHANGE TITULO (UNIQUE);
	
	 
	ALTER TABLE TCC ADD UNIQUE(TITULO);
	
	
		8.
		Representa a linguagem de manipulação de dados:
		
	
	
	
	
	TDL
	
	
	DDL
	
	 
	DML
	
	
	DCL
	
	
	DRL
	Aluno: FABIO 
	Matrícula: 
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.: 
	
	
		1.
		Sabemos que a Linguagem SQL é utilizada para acesso a banco de dados e é dividida em comandos DDL, DQL, DML, DCL e DTL. São comandos da DML (Data Manipulation Language)
		
	
	
	
	 
	INSERT, UPDATE e DELETE
	
	
	GRANT, REVOKE
	
	
	SELECT
	
	
	CREATE, DROP e ALTER
	
	
		2.
		Partindo da tabela a seguir, considerando que a mesma já foi criada de acordo com essa ordem de atributos, como ficaria o comando SQL para inserir um registro na tabela?
		
	
	
	
	
	INSERT INTO X_PROD VALUES (20, TV Led 40 polegadas, 400, 3000);
	
	
	INSERT INTO X_PROD VALUES ('TV Led 40 polegadas', 20, 400, 3000);
	
	
	INSERT INTO X_PROD VALUES ( TV Led 40 polegadas, 20, 400, 3000);
	
	 
	INSERT INTO X_PROD VALUES ( 20, 'TV Led 40 polegadas', 400, 3000);
	
	
	INSERT INTO X_PROD VALUES ('20','TV Led 40 polegadas', '400', '3000');
	
	
		3.
		Considere o esquema abaixo:
PROFESSOR (matriculaprf, nomeprf, titulacao, anoadmissao)
MINISTRA (matricula, codigo)
matricula REFERENCIA matriculaprf em PROFESSOR
codigo REFERENCIA codigodisciplina em DISCIPLINA
DISCIPLINA (codigodisciplina, nomedisciplina, creditos)
Os comandos SQL apresentam todos os elementos necessários para a sua criação estão representados em:
		
	
	
	
	 
	CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER(5) NOT NULL,NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT NULL, ANOADMISSAO VARCHAR (4) NOT NULL, PRIMARY KEY (MATRICULAPRF));
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL,NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER (2)  NOT NULL, PRIMARY KEY (CODIGODISCIPLINA));
CREATE TABLE MINISTRA (MATRICULA NUMBER (5) NOT NULL, CODIGO VARCHAR (5) NOT NULL, PRIMARY KEY (MATRICULA, CODIGO), FOREIGN KEY MATRICULA REFERENCES PROFESSOR (MATRICULAPRF), FOREIGN KEY CODIGO REFERENCES DISCIPLINA (CODIGODISCIPLINA)); 
	
	
	CREATE TABLE PROFESSOR ( MATRICULAPRF  NOT NULL,NOMEPRF  NOT NULL, TITULACAO  NOT NULL, ANOADMISSAO  NOT NULL, PRIMARY KEY (MATRICULAPRF));
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA  NOT NULL,NOMEDISCIPLINA  NOT NULL, CREDITOS  NOT NULL, PRIMARY KEY (CODIGODISCIPLINA));
CREATE TABLE MINISTRA (MATRICULA  NOT NULL, CODIGO NOT NULL, PRIMARY KEY (MATRICULA, CODIGO), FOREIGN KEY MATRICULA REFERENCES PROFESSOR (MATRICULAPRF), FOREIGN KEY CODIGO REFERENCES DISCIPLINA (CODIGODISCIPLINA));
	
	
	CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER (5) NOT NULL, NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT NULL, ANOADMISSAO VARCHAR (4) NOT NULL);
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL,NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER (2) NOT NULL);
CREATE TABLE MINISTRA (MATRICULA NUMBER (5)  NOT NULL, CODIGO VARCHAR (5) NOT NULL);
	
	
	CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER (5) NOT NULL,NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT NULL, ANOADMISSAO VARCHAR (4) NOT NULL);
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5) NOT NULL,NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER (2) NOT NULL);
CREATE TABLE MINISTRA (MATRICULA NUMBER(5)  NOT NULL, CODIGO VARCHAR (5) NOT NULL, PRIMARY KEY (MATRICULA, CODIGO), FOREIGN KEY MATRICULA REFERENCES PROFESSOR (MATRICULAPRF), FOREIGN KEY CODIGO REFERENCES DISCIPLINA (CODIGODISCIPLINA));
	
	
	CREATE TABLE PROFESSOR ( MATRICULAPRF NUMBER (5) NOT NULL,NOMEPRF VARCHAR(20) NOT NULL, TITULACAO VARCHAR (15) NOT NULL, ANOADMISSAO VARCHAR (4) NOT NULL, PRIMARY KEY (MATRICULAPRF));
CREATE TABLE DISCIPLINA ( CODIGODISCIPLINA VARCHAR (5)  NOT NULL, NOMEDISCIPLINA VARCHAR(20) NOT NULL, CREDITOS NUMBER (2) NOT NULL, PRIMARY KEY (CODIGODISCIPLINA));
CREATE TABLE MINISTRA (MATRICULA NUMBER (5) NOT NULL, CODIGO VARCHAR (5), PRIMARY KEY (MATRICULA, CODIGO));
	
	
	
		4.
		SQL é uma linguagem?
		
	
	
	
	
	Para criar regras de negócios que rodam no servidor.
	
	
	Para desenho de telas.
	
	
	Para criação de scripts.
	
	 
	Para manipulação de banco de dados.
	
	
	Para desenvolvimento de aplicações gráficas.
	
	
		5.
		Durante a criação de uma tabela, é detectada a necessidade de se definir um atributo de texto que armazenará dados com tamanhos entre 2000 e 3000 caracteres. Qual é o tipo adequado a ser usado este atributo neste caso?
		
	
	
	
	 
	VARCHAR2(tam)
	
	
	LONG
	
	
	LONG RAW
	
	
	CHAR(tam)
	
	
	RAW(tam)
	
	
	
		6.
		No Script SQL de criação da tabela pagamento aparece a palavra 'funcionario' 4 vezes. Sendo assim, é possível afirmar que se referem, respectivamente:
 
		
	
	
	
	
	coluna, tabela, apelido, chave primária
	
	
	tupla, chave primária, apelido, chave estrangeira
	
	
	campo, atributo, apelido, tabela
	
	 
	atributo, apelido, campo, tabela
	
	
	apelido, atributo, tabela, chave estrangeira
	
	
	
		7.
		Partindo da tabela a seguir, considerando que a mesma já foi criada de acordo com essa ordem de atributos, como ficaria o comando SQL para aumentar em 10% o valor unitário de cada produto?
		
	
	
	
	 
	UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT + VALOR_UNIT * 10 /100;
	
	
	UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT + 10 /100;
	
	
	UPDATE X_PROD SET VALOR_UNIT + VALOR_UNIT * 10 /100;
	
	
	UPDATE X_PROD SET VALOR_UNIT = VALOR_UNIT * 10 /100;
	
	
	UPDATE X_PROD SET VALOR_UNIT + 10 /100;
	
	
		8.
		O comando SQL para excluir os registros da tabela Aluno, cujo campo nome comece com a letra M, é:
		
	
	
	
	
	DELETE FROM Aluno WHERE nome LIKE 'G%'.
	
	
	DELETE FROM Aluno WHERE nome SUCH '%M'.
	
	
	DELETE FROM Aluno
	
	
	DELETE FROM Aluno WHERE nome='M'.
	
	 
	DELETE FROM Aluno WHERE nome LIKE 'M%'.
	Aluno: FABIO 
	Matrícula: 
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.: 
	
	
		1.
		O operador que possibilita a seleção de uma faixa de valores sem a necessidade do uso dos operadores >=, <= e AND é:
	
	
	
	
	
	GROUP BY
	
	
	HAVING
	
	
	IN
	
	
	LIKE
	
	 
	BETWEEN
	
	
	
		2.
		Dentre as sub-linguagens definidas na Linguagem SQL, o comando SELECT faz parte de qual delas?
	
	
	
	
	
	DCL
	
	 
	DRL
	
	
	DDL
	
	
	DML
	
	
	Controle de transações
	
	
		3.
		Assinale a alternativa que retorna corretamente o seguinte resultado:
"Todos os alunos cujos nomes terminam em Silva e começam por T ou B."
	
	
	
	
	
	SELECT * FROM alunos WHERE nome = 'BT%Silva'
	
	 
	SELECT * FROM alunos WHERE nome LIKE '[BT]%Silva'
	
	
	SELECT * FROM alunos WHERE nome LIKE '[BT]%' OR nome LIKE '%Silva'
	
	
	SELECT * FROM alunos WHERE nome LIKE '[B-T]%Silva'
	
	
	SELECT * FROM alunos WHERE nome LIKE 'BorT%Silva'
	
	
	
		4.
		O esquema abaixo refere-se a um banco de dados criado para auxiliar na gerência de orientação de alunos por professores e da defesa do Trabalho de Conclusão de Curso (TCC) pelos alunos.  Analise-o:
Professor (MatP,NomeP, telP, emailP)
Aluno (MatA, MatP, NomeA, emailA)
TCC (IDTCC, MatA, Titulo, Resumo)
 
Assinale a única alternativa que retorna exatamente os dados exibidos na figura:
	
	
	
	
	
	SELECT NOMEA ALUNO, NOMEP PROFESSOR, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA;
	
	 
	SELECT NOMEP PROFESSOR, NOMEA ALUNO, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA;
	
	
	SELECT NOMEP PROFESSOR, NOMEA ALUNO, TITULO "TÍTULO" FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP;
	
	
	SELECT NOMEA ALUNO, NOMEP PROFESSOR, TITULO FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA;
	
	
	SELECT NOMEP, NOMEA, TITULO FROM PROFESSOR P, ALUNO A, TCC T WHERE P.MATP = A.MATP AND A.MATA = T.MATA;
	
	
		5.
		O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263
Características do esquema: Chave primária sublinhada e chave estrangeira em itálico.
Seguem algumas tabelas do Esquema:
 
Espécie (IDEspécie, IDOrdem. Nome_Científico, TamMaior, TamMenor, TamMédio)
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo)
Captura (NumCaptura, IDTubarão,IDLocal, Data, TempAgua)
Local (IDLocal, CodArea, NomeLocal)
Area (CodArea, NomeArea)
 
Sabendo-se que um metro possui 39,3700787 polegadas, assinale a alternativa correto abaixo que consulta a data da captura, a temperatura da água e o comprimento do tubarão convertido em polegadas com o título Polegadas:
	
	
	
	
	 
	SELECT DATA, TEMPAGUA, COMPRIMENTO * 39.3700787 Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO;
	
	
	SELECT DATA, TEMPAGUA, "COMPRIMENTO * 39,3700787" Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO;
	
	
	SELECT DATA, TEMPAGUA, (COMPRIMENTO * 39,3700787) Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO;
	
	
	SELECT DATA, TEMPAGUA, COMPRIMENTO * 39.3700787 Polegadas FROM TUBARÃO T, CAPTURA C;
	
	
	SELECT DATA, TEMPAGUA, COMPRIMENTO * 39,3700787 Polegadas FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO;
	
	
		6.
		O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263
Características do esquema: Chave primária sublinhada e chave estrangeira em itálico.
Seguem algumas tabelas do Esquema:
Nome (IDNome, IDEspécie, NomePopular)
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo)
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua)
Local (IDLocal, CodArea, NomeLocal)
Area (CodArea, NomeArea)
Deseja-se realizar uma consulta da tabela Captura exibindo-se a data e a temperatura da água apresentada em graus Celsius, convertida para graus Fahrenheit (Fórmula °F = °C × 1, 8 + 32). Assinale a alternativa que exibe os dados convertidos corretamente:
	
	
	
	
	
	SELECT DATA, AVG (TEMPAGUA) * 1.8 + 32 "°F" FROM CAPTURA;
	
	 
	SELECT DATA, TEMPAGUA * 1.8 + 32 "°F" FROM CAPTURA;
	
	
	SELECT DATA, TEMPAGUA * (1,8 + 32) "°F" FROM CAPTURA;
	
	
	SELECT DATA, TEMPAGUA * (1.8 + 32) "°F" FROM CAPTURA;
	
	
	SELECT DATA, TEMPAGUA * 1,8 + 32 "°F" FROM CAPTURA;
	
	
		7.
		Observe a tabela empregado:
Qual a quantidade de registros retornados ao efetuarmos a consulta abaixo:
	
	
	
	
	
	3
	
	
	1
	
	 
	2
	
	
	4
	
	
	0
	
	
		8.
		
Sabendo-se que existem dados de TCC cadastrados com datas de defesa que variam de 20/11/2012 até o dia de hoje, assinale qual das alternativas abaixo retornaria o mesmo resultado que o comando "SELECT * FROM TCC WHERE DTDEFESA IN ('21/11/2013', '22/11/2014');":
	
	
	
	
	
	SELECT * FROM TCC WHERE DTDEFESA > '21/11/2013' AND < '22/11/2014';
	
	
	SELECT * FROM TCC WHERE DTDEFESA => '21/11/2013' AND <= '22/11/2014';
	
	 
	SELECT * FROM TCC WHERE DTDEFESA BETWEEN '21/11/2013' AND '22/11/2014';
	
	
	SELECT * FROM TCC WHERE DTDEFESA = '21/11/2013' AND '22/11/2014';
	
	
	SELECT * FROM TCC WHERE DTDEFESA BETWEEN ('21/11/2013'; '22/11/2014');
	
	Aluno: FABIO 
	Matrícula:
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.: 2017.3 EAD (G) / EX
	
	
		1.
		Em SQL, para contar linhas usamos:
	
	
	
	
	
	GROUP BY
	
	
	SUM
	
	
	SELECT
	
	 
	COUNT
	
	
	AVG
	
	
	
		2.
		Os conceitos de banco de dados relacional refletem o nível de abstração dos dados. Desta forma, marque a alternativa que se refere à integridade referencial.
	
	
	
	
	
	É o conjunto de opções de preenchimento do atributo.
	
	
	Pode ser modificado com o uso dos comandos DDL.
	
	 
	Uma chave estrangeira é sempre uma chave primária em outra tabela.
	
	
	Pode ser considerado como o resultado da aplicação do SELECT.
	
	 
	Toda entidade deve possui chave primária.
	
	
	
		3.
		Dentre as opções a seguir, qual não é uma função de grupo?
	
	
	
	
	
	SUM(x)
	
	 
	MED(X)
	
	
	MAX(x)
	
	
	AVG (x)
	
	
	CONT(*)
	
	
		4.
		Considere a relação:
FUNCIONARIO (matrícula, cargo, salario, admissao)
A consulta SQL que mostra média dos salários dos funcionários é:
	
	
	
	
	
	SELECT SALARIO FROM FUNCIONARIO AVG;
	
	
	Nenhuma das respostas acima.
	
	 
	SELECT AVG(SALARIO) FROM FUNCIONARIO;
	
	
	SELECT SUM(SALARIO) FROM FUNCIONARIO;
	
	
	SELECT MEDIA(SALARIO) FROM FUNCIONARIO;
	
	
	
		5.
		De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar o menor salário pago aos Empregados Agrupados por Departamento.
	
	
	
	
	
	SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID;
	
	 
	SELECT MIN(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO;
	
	
	SELECT MINIMO(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO;
	
	
	SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID;
	
	
	SELECT MINUS(SALARIO) FROM EMPREGADO GROUP BY ID_DEPTO;
	
	
	
		6.
		O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dados públicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263
Características do esquema: Chave primária sublinhada e chave estrangeira em itálico.
 Seguem algumas tabelas do Esquema:
 
Nome (IDNome, IDEspécie, NomePopular)
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo)
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua)
Local (IDLocal, CodArea, NomeLocal)
Area (CodArea, NomeArea)
 
Deseja-se consultar a quantidade de tubarões do sexo feminino que foram capturados entre os anos de 2002 e 2013. Assinale a opção abaixo que realiza esta consulta:
 
	
	
	
	
	
	SELECT COUNT (*) QTD FROM TUBARÃO, CAPTURA WHERE SEXO = 'F' AND DATA BETWEEN '01/01/2002' AND '31/12/2013';
	
	 
	SELECT COUNT (*) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = 'F' AND DATA BETWEEN '01/01/2002' AND '31/12/2013';
	
	
	SELECT COUNT (TUBARÃO) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = 'F' AND DATA BETWEEN '01/01/2002' AND '31/12/2013';
	
	
	SELECT COUNT (tubarão) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = 'F' AND DATA BETWEEN 2002 AND 2013;
	
	
	SELECT COUNT (*) QTD FROM TUBARÃO T, CAPTURA C WHERE C.IDTUBARÃO = T.IDTUBARÃO AND SEXO = 'F' AND DATA BETWEEN 2002 AND 2013;
	
	
	
		7.
		De acordo com o modelo de dados definido pelas tabelas a seguir, indique a instrução SQL adequada para:
Apresentar os primeiros nomes, o salário e a data de admissão dos Empregados que ganham acima de R$ 1.000,00 em ordem Crescente de Salário e de Data de Admissão.
	
	
	
	
	
	SELECT PRIM_NOME, SALARIO, DT_ADMISSAO FROM EMPREGADO WHERE SALARIO > 1000 ORDER BY ASC SALARIO, DESC DT_ADMISSAO;
	
	 
	SELECT PRIM_NOME, SALARIO, DT_ADMISSAO FROM EMPREGADO WHERE SALARIO > 1000 ORDER BY SALARIO, DT_ADMISSAO;
	
	
	SELECT PRIM_NOME, SALARIO, DT_ADMISSAO FROM EMPREGADO WHERE SALARIO > 1000 ORDER BY DESC SALARIO, ASC DT_ADMISSAO;
	
	 
	SELECT PRIM_NOME, SALARIO, DT_ADMISSAO FROM EMPREGADO WHERE SALARIO > 1000 ORDER BY SALARIO DESC, DT_ADMISSAO DESC;
	
	
	SELECT PRIM_NOME, SALARIO, DT_ADMISSAO FROM EMPREGADO WHERE SALARIO > 1000 ORDER BY ASC SALARIO, ASC DT_ADMISSAO;
	
	
	
		8.
		O esquema de banco de dados apresentado abaixo faz parte de um banco de dados criado a partir de um conjunto de dadospúblicos de captura de tubarões entre os anos de 2001 e 2013 na costa da Austrália. Os dados podem ser baixados no endereço: https://data.qld.gov.au/dataset/shark-control-program-shark-catch-statistics/resource/5c6be990-3938-4125-8cca-dac0cd734263
Características do esquema: Chave primária sublinhada e chave estrangeira em itálico.
Seguem algumas tabelas do Esquema:
Tubarão (IDTubarão, IDEspécie, Comprimento, Sexo)
Captura (NumCaptura, IDTubarão, IDLocal, Data, TempAgua)
Local (IDLocal, CodArea, NomeLocal)
Area (CodArea, NomeArea)
Deseja-se saber qual a quantidade de locais que foram utilizados na captura de tubarões agrupados pelo nome de cada área. Assinale a alternativa que retorna corretamente esta consulta:
 
	
	
	
	
	
	SELECT NOMEAREA, COUNT (CODAREA)"QTD DE LOCAIS" FROM AREA, LOCAL GROUP BY NOMEAREA;
	
	 
	SELECT NOMEAREA, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA GROUP BY NOMEAREA;
	
	
	SELECT NOMELOCAL, COUNT (CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA GROUP BY NOMEAREA;
	
	
	SELECT NOMELOCAL, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA GROUP BY NOMEAREA;
	
	
	SELECT NOMEAREA, COUNT (L.CODAREA)"QTD DE LOCAIS" FROM AREA A, LOCAL L WHERE A.CODAREA = L.CODAREA;
	Aluno: FABIO 
	Matrícula: 
	Disciplina: CCT0199 - IMPL. BANCO DE DADOS 
	Período Acad.: 2017.3 EAD (G) / EX
	
	
	
		1.
		Qual a sintaxe SQL-SELECT errada?
	
	
	
	
	
	SELECT X.COLUNA1, AVG(Y.COLUNA2) FROM TABELA1 X INNER JOIN TABELA2 Y ON X.COLUNA3=Y.COLUNA4 GROUP BY X.COLUNA1;
	
	
	SELECT COLUNA1, COLUNA2, COLUNA3 FROM TABELA1 ORDER BY 1 ASC, 2 DESC, 3 ASC;
	
	
	SELECT COLUNA1, COLUNA2 FROM TABELA1 WHERE COLUNA3 IN (1,2,3);
	
	 
	SELECT COLUNA1, COLUNA2 FROM TABELA1 WHERE COLUNA3 LIKE ('%X%') ORDER BY 3;
	
	
	SELECT COUNT(*) FROM TABELA1;
	
	
	
		2.
		
Um sistema de informação usa um banco de dados relacional que possui tabelas cujos esquemas em SQL estão representados a seguir. 
CREATE TABLE Artista ( 
id INTEGER PRIMARY KEY, 
nome VARCHAR(40) NOT NULL, 
CPF CHAR(11) NOT NULL, 
dataNascimento DATE, 
UNIQUE (CPF) ); 
CREATE TABLE Evento ( 
id INTEGER PRIMARY KEY, 
descricao VARCHAR(60) NOT NULL, 
numMaxConvidados INTEGER DEFAULT 0, 
CHECK (numMaxConvidados >= 0) ); 
CREATE TABLE Atuacao ( 
idArtista INTEGER, 
idEvento INTEGER, 
PRIMARY KEY (idArtista, idEvento), 
FOREIGN KEY (idArtista) REFERENCES Artista, 
FOREIGN KEY (idEvento) REFERENCES Evento(id)); 
O sistema também possui uma consulta que integra um de seus relatórios, conforme indicado a seguir: 
SELECT A.nome, E.descricao 
FROM Evento E FULL JOIN Atuacao T ON E.id = T.idEvento 
FULL OUTER JOIN Artista A ON T.idArtista = A.id 
Considerando que todas as tabelas possuem dados, o resultado da consulta utilizada no relatório e:
	
	
	
	
	
	A descrição de todos os eventos e, caso haja artistas alocados, os seus nomes.
	
	
	O nome de todos os artistas combinados com a descrição de todos os eventos
	
	
	O nome de todos os artistas e, caso eles participem de eventos, a descrição do evento.
	
	
	O nome de todos os artistas e a descrição de todos os eventos em que eles atuam.
	
	 
	O nome de todos os artistas, a descrição de todos os eventos e, caso eles se relacionem, os dois combinados.
	
	
		3.
		
Listar cpf e nome do cliente que possui o veículo placa BDQ2012.
	
	
	
	
	
	SELECT c.cpf, v.veiculo FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf WHERE v.placa = 'BDQ2012';
	
	 
	SELECT c.cpf, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf  WHERE v.placa = 'BDQ2012';
	
	
	Nenhuma das consultas acima.
	
	
	SELECT c.cpf, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf ;
	
	
	SELECT c.cpf, c.cliente FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf WHERE v.placa = 'BDQ2012';
	
	
	
		4.
		Para se obter a quantidade de empregados por cargo deve-se digitar qual o select abaixo:
	
	
	
	
	
	SELECT C.DESCRICAO AS CARGO, COUNT(E.MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E GROUP BY C.DESCRICAO;
	
	
	SELECT C.DESCRICAO AS CARGO, SUM(E.MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E ON C.CODIGO = E.CARGO GROUP BY C.DESCRICAO;
	
	 
	SELECT C.DESCRICAO AS CARGO, COUNT(E.MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E ON C.CODIGO = E.CARGO GROUP BY C.DESCRICAO;
	
	
	SELECT C.DESCRICAO AS CARGO, COUNT(E.MATRICULA) AS QTDE GROUP BY C.DESCRICAO FROM CARGO C INNER JOIN EMPREGADO E ON C.CODIGO = E.CARGO;
	
	
	SELECT DESCRICAO AS CARGO, COUNT(MATRICULA) AS QTDE FROM CARGO C INNER JOIN EMPREGADO E ON CODIGO = CARGO GROUP BY DESCRICAO;
	
	
		5.
		
Qual das consultas abaixo retorna o nome e a placa de todos os veículos?
	
	
	
	
	
	SELECT c.nome FROM Veiculo v INNER JOIN Cliente c ON cpf = cpf;
	
	
	SELECT placa FROM Veiculo INNER JOIN Cliente ON Cliente_cpf = cpf;
	
	
	SELECT v.placa, c.nome FROM Cliente INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf;
	
	
	SELECT c.cpf, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf  WHERE v.placa;
	
	 
	SELECT v.placa, c.nome FROM Veiculo v INNER JOIN Cliente c ON v.Cliente_cpf = c.cpf;
	
	
	
		6.
		A partir das relações abaixo, responda em SQL: quantos alunos (nota maior ou igual a 6) foram aprovados na disciplina 'Banco de Dados' com o professor 'Rui'? 
Use inner join. Relações: 
PROFESSOR (idprofessor, nomeprofessor); 
LECIONA (idprofessor, iddisciplina); 
DISCIPLINA (iddisciplina, nomedisciplina); 
ALUNO (matricula, nomealuno); 
MATRICULA (inscrição, iddisciplina, matricula, nota, período, ano)
	
	
	
	
	 
	SELECT count(distinct) AS total FROM professor p INNER JOIN leciona l ON p.idprofessor = l.idprofessor INNER JOIN disciplina d ON l.iddisciplina = d.iddisciplina INNER JOIN matricula m ON m.iddisciplina = d.iddisciplina WHERE nomeprofessor = 'Rui' AND nomedisciplina = 'Banco de Dados'
	
	
	SELECT count(distinct) AS total FROM professor p RIGHT JOIN leciona l ON p.idprofessor = l.idprofessor RIGHT JOIN disciplina d ON l.iddisciplina = d.iddisciplina RIGHT JOIN matricula m ON m.iddisciplina = d.iddisciplina WHERE nomeprofessor = 'Rui' OR nomedisciplina = 'Banco de Dados'
	
	
	SELECT count(*) AS total FROM professor p, leciona l, matricula m WHERE p.idprofessor = l.idprofessor AND m.iddisciplina = d.iddisciplina AND nomeprofessor = 'Rui' AND nomedisciplina = 'Banco de Dados'
	
	
	SELECT count(*) AS total FROM professor p LEFT JOIN leciona l ON p.idprofessor = l.idprofessor LEFT JOIN disciplina d ON l.iddisciplina = d.iddisciplina LEFT JOIN matricula m ON m.iddisciplina = d.iddisciplina WHERE nomeprofessor = 'Rui' OR nomedisciplina = 'Banco de Dados'
	
	
	SELECT sum(*) AS total FROM professor p, leciona l, matricula m WHERE p.idprofessor = l.idprofessor AND m.iddisciplina = d.iddisciplina AND nomeprofessor = 'Rui' AND nomedisciplina = 'Banco de Dados'
	
	
	
		7.
		São restrições para manipular (INSERT, DELETE ou UPDATE) os dados de uma tabela no banco dados através de uma visão, EXCETO:
	
	
	
	
	
	Não possuir junções, ou seja, ter sido criada sobre uma única tabela.
	
	
	Não possuir colunas derivadas de funções de agregação.
	
	 
	A chave primaria estar contida na consulta que originou a visão.
	
	
	As cláusulas GROUP BY ou HAVING não estarem presentes na sua consulta.
	
	
	Não possuir a cláusula DISTINCT na sua consulta.
	
	
	
		8.
		Considere as afirmações abaixo: 
1. As relações podem ser manipuladas através de operadores relacionais.Embora não seja utilizada frequentemente, devido à sua complexidade, ela ajuda a esclarecer a manipulação relacional e estabelece os fundamentos para o aprendizado da SQL. 
2. A Álgebra Relacional é um conjunto de operações usadas para manipular relações e é oriunda da Teoria dos Conjuntos da matemática. 
3. A Álgebra Relacional é fechada, o que significa que os resultados de uma ou mais operações relacionais são sempre uma relação. 
São VERDADEIRAS:
	
	
	
	
	 
	1, 2 e 3.
	
	
	1 e 2.
	
	
	Somente 1.
	
	
	1 e 3.
	
	
	2 e 3.

Outros materiais