Essays.club - TCC, Modelos de monografias, Trabalhos de universidades, Ensaios, Bibliografias
Pesquisar

Resumo Banco de Dados

Por:   •  15/4/2018  •  1.656 Palavras (7 Páginas)  •  271 Visualizações

Página 1 de 7

...

for executado o parametro dado será o @cod, valor de tipo de dado int, este não pode ser repetido por isso é declarado dessa forma. E por fim executar o comando inserindo os parametros desejados, o nº 1, representa o vendedor cod_vendedor = 1.

INSERIR DADOS A UMA TABELA ATRAVES DE PROCEDURE

Praticamente mesmo processo porém alterar as intruções.

CREATE PROCEDURE sp_produto_inserir

@Nome VARCHAR(64),

@Descricao TEXT,

@Valor MONEY AS

INSERT INTO

Produto(Nome, Descricao, Valor)

VALUES(@Nome, @Descricao, @Valor)

ALTERAR CAMPOS ATRAVÉS DE UMA PROCEDURE

CREATE PROCEDURE sp_produto_alterar

@ID BIGINT,

@Nome VARCHAR(64),

@Descricao TEXT,

@Valor MONEY

AS

UPDATE

Produto

SET

Nome = @Nome,

Descricao = @Descricao,

Valor = @Valor

WHERE

ID = @ID

PS.: A variável @ID deve ser a chave primária para que a alteração seja única e não haja repetição desse valor.

FUNCTION

Elabora rotinas que apresentam após sua execução em tabelas e em valores. Pode se então criar funções dentro do banco. Exemplo: inserir em todo espaço de uma string o caractere (.). Exemplo LISTA_5 1 – Crie uma função escalar chamada fu_Marca onde é passado como parâmetro o código do produto e a função retorne o nome da marca. create function fu_marca (@codproduto int) RETURNS real AS BEGIN DECLARE @marca nvarchar SELECT @marca = Produto.cod_produto from Produto inner Join Marca on Produto.cod_marca = Marca.cod_marca where Marca.nome = @marca RETURN @marca END

DEMO

IMG7

Outro exemplo (retirado do dev media) CREATE FUNCTION funcionariosApos(@dt datetime)

RETURNS TABLE AS RETURN (SELECT * FROM FUNCIONARIO WHERE dataContratacao >= @dt)

//executa SELECT * FROM funcionariosApos(’2000-01-01’) DEMO

IMG8

TRIGGER (fonte de informação deste tópico foi retirada do site dev media)

O termo trigger (gatilho em inglês) define uma estrutura do banco de dados que funciona, como o nome sugere, como uma função que é disparada mediante alguma ação. Geralmente essas ações que disparam os triggers são alterações nas tabelas por meio de operações de inserção, exclusão e atualização de dados (insert, delete e update).

CRIAR TRIGGER

REATE TRIGGER [NOME DO TRIGGER] ON [NOME DA TABELA] [FOR/AFTER/INSTEAD OF] [INSERT/UPDATE/DELETE] AS

--CORPO DO TRIGGER

Os parâmetro são:

NOME DO TRIGGER: nome que identificará o gatilho como objeto do banco de dados. Deve seguir as regras básicas de nomenclatura de objetos. NOME DA TABELA: tabela à qual o gatilho estará ligado, para ser disparado mediante ações de insert, update ou delete. FOR/AFTER/INSTEAD OF: uma dessas opções deve ser escolhida para definir o momento em que o trigger será disparado. FOR é o valor padrão e faz com o que o gatilho seja disparado junto da ação. AFTER faz com que o disparo se dê somente após a ação que o gerou ser concluída. INSTEAD OF faz com que o trigger seja executado no lugar da ação que o gerou. INSERT/UPDATE/DELETE: uma ou várias dessas opções (separadas por vírgula) devem ser indicadas para informar ao banco qual é a ação que disparará o gatilho. Por exemplo, se o trigger deve ser disparado após toda inserção, deve-se utilizar AFTER INSERT.

Exemplo da lista_5

2 – crie uma trigger que impossibilite a exclusão de registros da tabela Condicao_Pagamento. create trigger tr_condicao_pagamento_nao_excluir on dbo.Condicao_Pagamento instead of delete as begin print ’EXCLUSAO NAO PERMITIDO’ end

Fim!! Boa Prova a todos..

Tutoriais criado por Francielle Marcicano =)

LISTA_5_RESPONDIDA

View 1 – Crie uma view com o nome vw_produto_marca que retorne o nome do produto e a marca do produto. create view vw_produto_marca as select Produto.nome as Nome_Produto, dbo.Marca.Nome as Nome_Marca from dbo.Produto inner join dbo.Marca on dbo.Produto.cod_marca = dbo.Marca.cod_marca

select * from vw_produto_marca

2 – Crie uma view chamada vw_cliente_vendedor que retorne o nome do vendedor e todas as informações de clientes que esse vendedor atendeu. create view vw_cliente_vendedor as select Vendedor.Nome as Nome_Vendedor, Cliente.cod_cliente as Cod_Cliente, Cliente.Nome as Nome_Cliente, Cliente.Telefone as Telefone, Cliente.rg as RG, Cliente.cpf as CPF, Cliente.Email as Email, Cliente.sexo as Sexo, Pedido.cod_pedido as Pedido from Pedido inner join Vendedor on Pedido.cod_vendedor = Vendedor.cod_vendedor inner join Cliente on Pedido.cod_cliente = Cliente.cod_cliente where Vendedor.Nome = ’Luiza’

select * from vw_cliente_vendedor

Procedure 1 – Crie uma proc chamada pr_pedidosVendedor que mostre todos os pedidos do vendedor cujo código do vendedor seja o código passado como parâmetro. create proc pr_pedidosvendedor (@cod int) as select Vendedor.nome as Nome, Pedido.cod_pedido as Pedido from Vendedor inner join Pedido on Vendedor.cod_vendedor = Pedido.cod_vendedor where Vendedor.cod_vendedor = @cod

exec pr_pedidosvendedor 1

2 - Crie uma proc chamada pr_forma_pagamento onde é passado o cod_condicao_pagto da tabela Condicao_Pagamento e retorne o valor das vendas dessa condição de pagamento. create proc pr_forma_pagamento (@cond numeric) as select Condicao_Pagamento.cod_condicao_pagto as Forma_de_Pagamento,

...

Baixar como  txt (11.8 Kb)   pdf (57.2 Kb)   docx (16.3 Kb)  
Continuar por mais 6 páginas »
Disponível apenas no Essays.club