Insert e Update utilizando variável ROWTYPE
Bom dia Sérgio, tudo bem ?
Como faço para fazer um update em uma tabela, utilizando uma variável ROWTYPE preenchida ?
Obrigado
Antônio
Camarada, fazer um update utilizando ROWTYPE é bem simples. Então vamos aos exemplos práticos.
Vamos criar a nossa tabela TESTE.
CREATE TABLE teste
(
codigo NUMBER
,descricao VARCHAR2(1000)
)
/
Agora vamos criar o nosso código para exemplificar a utilização do UPDATE e de brinde, também mostrar como utilizar o INSERT.
DECLARE
v_row teste%ROWTYPE;
BEGIN
-- Preenchendo os campos
v_row.codigo := 1;
v_row.descricao := 'TESTE 1';
-- Inserindo os dados
INSERT
INTO teste
VALUES v_row;
-- Alterando o valor do campo
v_row.descricao := 'TESTE - 1';
-- Atualizando os dados
UPDATE teste
SET row = v_row
WHERE codigo = 1;
COMMIT;
EXCEPTION
WHEN others THEN
DBMS_OUTPUT.put_line('Erro: ' || DBMS_UTILITY.format_error_stack);
END;
Observe no código que preencho as informações na variável ROWTYPE, faço o INSERT, altero o valor da descrição e faço um UPDATE. Vamos ver o resultado:
SELECT * FROM teste
/
CODIGO DESCRICAO
------ ---------------
1 TESTE - 1
Bom, é isso ! Espero ter ajudado !