Arquivo da categoria: Banco de Dados
Instrução MERGE
O Comando MERGE no SQL Server e Oracle permite desenvolver operações complexas (que muitas vezes só eram possíveis com cursores) em um comando único que pode ao mesmo tempo realizar INSERTS, UPDATES e DELETES em várias Tabelas. O Exemplo abaixo … Continuar lendo
Cursores Atualizáveis
Embora pessoalmente eu não goste nem recomende o uso de cursores, principalmente para atualização de dados, tais recursos são muitas vezes necessários ou requisitados pelos desenvolvedores. O tutorial abaixo apresenta como desenvolver um cursor atualizável. CREATE TABLE TabAtualizavel ( ID INT IDENTITY(1,1) … Continuar lendo
BD II – Cursor para Atualizar Estoque
ALTER PROCEDURE pAtualizaEstoque @Conta varchar(20) AS DECLARE CProdutosVendidos CURSOR FOR SELECT V.VendaID, VD.ProdutoID, VD.QtdPedido from VendasVenda V inner join VendasVendaDetalhe VD ON V.VendaID = vd.VendaID where V.Conta = @Conta OPEN CProdutosVendidos –abrir o cursor –Variaveis Auxiliares DECLARE @VendaID int, @ProdutoID … Continuar lendo
BD II – Triggers e Informações complementares
CREATE TYPE T_PAI_ID FROM INT GO CREATE TABLE PAI ( PAI_ID T_PAI_ID IDENTITY(0,1) PRIMARY KEY NOT NULL, PAI VARCHAR(100) ) GO CREATE TABLE FILHOS ( FILHO_ID INT IDENTITY(0,1) NOT NULL , PAI_ID T_PAI_ID REFERENCES PAI (PAI_ID), FILHO VARCHAR(100) ) GO CREATE TRIGGER … Continuar lendo
CONCEITOS BÁSICOS DE PROGRAMAÇÃO SQL
— criando uma variavel DECLARE @VARIAVEL int — atribuindo um valor SET @VARIAVEL = 1 — Consumindo o valor SELECT @VARIAVEL — TEMPO DE VIDA — A VARIAVÉL EXIST SOMENTE NO ESCOPO DO BATCH CORRENTE — OU SEJA, ATÉ … Continuar lendo
STORED PROCEDURES – AULA 1
— UMA STORED PROCEDURES BÁSICA, UTILIZADA PARA RELATÓRIO CREATE PROCEDURE ImprimeNotaFiscal ( @VENDAID INT ) AS SELECT H.OrderDate, H.CustomerID, D.ProductID, D.OrderQty, D.UnitPriceDiscount, D.UnitPrice FROM Sales.SalesOrderHeader H inner join Sales.SalesOrderDetail D ON H.SalesOrderID = D.SalesOrderID WHERE H.SalesOrderID = @VENDAID … Continuar lendo
VIEWS – Conceitos Básicos
Finalidade Views são utilizadas para diversas finalidades, as principais são: – Reutilização de Consultas – Aplicar restrições de Segurança – Ferramenta de Desempenho – Simplificar acesso aos Dados Como Criar uma View CREATE VIEW MeuContatos AS SELECT ContatoID, Cargo, … Continuar lendo
Como validar parâmetros de Entrada em Stored Procedures
Muitas vezes existem dependências e restrições de dados que impedem a inserção e alteração de dados de forma simplificada. Por exemplo, considere a tabela abaixo que contem uma constraint do tipo Check que impede que seja cadastrado um valor fora … Continuar lendo
Usando uma Stored Procedure para Atualizar Campos Específicos
A Stored Procedure abaixo atualiza apenas os campos que lhe forem passados, dessa forma o usuário não precisa passar todos os campos quanto quer atualizar apenas o valor de 1 deles. CREATE PROCEDURE p_Atualiza @chave int, @campo1 char(10) = null, … Continuar lendo
Quantos Registros São Afetados pela Trigger?
Uma trigger pode ser executada para diversas linhas numa tabela. Quando o comando INSERT, UPDATE ou DELETE afeta várias linhas a trigger é disparada uma única vez (SQL Server). No ORACLE, pode-se optar por criar TRIGGERS que são disparadas uma … Continuar lendo