TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Lista 06 SQL Server UNIP

Por:   •  14/11/2021  •  Exam  •  585 Palavras (3 Páginas)  •  103 Visualizações

Página 1 de 3

1) Explique o que vem a ser uma visão? Para que ela serve?

2) Crie duas tabelas que se relacionem e apresente uma visão que mostre a junção entre elas.

Apresente inclusive os scripts de criação das tabelas.

3) Faça pelo menos duas operações em cima da visão criada: uma de seleção e outra de

filtragem.

4) O que você pode fazer para evitar que mudanças na estrutura da tabela afete a visão já

criada? Faça a nova implementação.

5) Crie um script SQL que demonstre a utilização de transações. Simule uma situação de

commit e outra de rollback.

6) Descreva as principais características de uma transação? Explique detalhadamente o que

vem a ser ACID.

7) Explique o que vem a ser o lock? Em quais situações pode ocorrer? Cite exemplos.

8) Como saber quem está utilizando/travando um determinado recurso? Explique.

9) Como identificar o número de transações que estão rodando no momento? Esse número é

geral ou é por conexão?

>>>EXERCICIO 01

R: Visão (ou View) é uma "tabela virtual" para visualização de dados, ela é prática porque com ela você pode de certa forma predefinir os dados da consulta, e assim evitando ter que usar todo SELECT novamente cada vez que for feito a consulta daqueles dados.

==================================================================================================

>>>EXERCICIO 02

--TABELA DE CLIENTES

CREATE TABLE clientes(

id_client INT IDENTITY PRIMARY KEY,

nome VARCHAR(30) NOT NULL UNIQUE,

telefone INT,

cidade VARCHAR(20));

--TABELA DE CARROS

CREATE TABLE carro(

id_carro INT IDENTITY PRIMARY KEY,

nome VARCHAR(20),

marca VARCHAR(20),

duracao_aluguel INT,

id_client INT,);

--------------------------------------------------------------------------------------------------

--INSERÇÃO DE DADOS DOS CLIENTES

INSERT INTO clientes(nome,telefone,cidade) VALUES

('Henrique','12345678','Jundiai'),('Ana','22345678','Itupeva'),('Pedro','33345678','Campinas'),

('Matheus','44445678','Sao Paulo'),('Sandra','55555678','Jundiai'),('Joao','666666678','Itupeva');

--INSERÇÃO DE DADOS DOS CARROS

INSERT INTO carro(nome,marca,duracao_aluguel,id_client) VALUES

('Fiesta','Ford','0','0'),('Gol','VW','20','3'),('Onix','Chevrolet','10','2'),

('Uno','Fiat','5','6'),('Polo','VW','25','5'),('Ka','Ford','10','1');

--------------------------------------------------------------------------------------------------

--CRIACAO DA VISAO

CREATE VIEW VN_Carros_Alugados AS

SELECT b.id_carro AS 'ID_Carro',b.nome AS 'Modelo',b.marca AS 'Fabricante',

a.nome AS 'Alugado_por',b.id_client AS 'ID_Cliente',b.duracao_aluguel AS 'Tempo_de_Aluguel(horas)'

FROM clientes a INNER JOIN carro b

ON a.id_client = b.id_client;

==================================================================================================

>>>EXERCICIO 03

SELECT * FROM VN_Carros_Alugados;

--------------------------------------------------------------------

SELECT ID_Carro,ID_Cliente,Tempo_de_Aluguel FROM VN_Carros_Alugados;

==================================================================================================

>>>EXERCICIO 04

R: Para evitar que as tabelas sejam alteradas e "quebrar" a view, faz o uso do SCHEMABINDING

--CRIACAO DA VISAO COM SCHEMABINDING

CREATE VIEW VN_Carros_Alugados WITH SCHEMABINDING AS

SELECT b.id_carro AS 'ID_Carro',b.nome AS 'Modelo',b.marca AS 'Fabricante',

a.nome AS 'Alugado_por',b.id_client AS 'ID_Cliente',b.duracao_aluguel AS

...

Baixar como (para membros premium)  txt (6 Kb)   pdf (50.4 Kb)   docx (10.2 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com