Este é um exemplo simples para trabalhar com record
Posteriormente irei mostrar um exemplo como se fosse uma tabela, onde poderemos criar campos, assim não precisaríamos criar uma tabela temporária.
DECLARE
TYPE TREGISTRO IS TABLE OF NUMBER INDEX BY BINARY_INTEGER;
I BINARY_INTEGER;
REGISTRO TREGISTRO;
BEGIN
REGISTRO(0) := 1;
REGISTRO(1) := 2;
REGISTRO(2) := 3;
I := REGISTRO.FIRST;
WHILE I IS NOT NULL
LOOP
DBMS_OUTPUT.PUT_LINE(REGISTRO(I));
I := REGISTRO.NEXT(I);
END LOOP;
END;
Fábrica de Oracle
segunda-feira, 15 de julho de 2013
quarta-feira, 15 de maio de 2013
Oracle Pl/Sql: Descobrir quantos registros foram alterados
--Após a execução de um insert, delete ou update, Utiliza-se o comando SQL%ROWCOUNT;
DBMS_OUTPUT.PUT_LINE(SQL%ROWCOUNT || ' Registro(s) alterado(s)');
sexta-feira, 5 de abril de 2013
Oracle Pl/Sql: Mudar e voltar a senha do usuário
--Oracle 10G
SELECT USERNAME
,PASSWORD
FROM DBA_USERS
WHERE USERNAME = 'USERNAME_USUARIO';
--Oracle 11G
SELECT A.NAME
,A.PASSWORD
FROM SYS.USER$ A
WHERE NAME = 'USERNAME_USUARIO';
--Guarde o valor da senha em algum lugar
--MUDANDO A SENHA
ALTER USER USERNAME_USUARIO IDENTIFIED BY "NOVA SENHA";
--VOLTANDO A SENHA
ALTER USER USERNAME_USUARIO IDENTIFIED BY VALUES 'SENHA ANTERIOR';
quarta-feira, 3 de abril de 2013
Oracle Pl/Sql: Deixar somente números de um campo
SELECT REGEXP_REPLACE('TESTE DE 123 COM LETRAS', '[^[:digit:]]')
FROM DUAL;
segunda-feira, 25 de março de 2013
Oracle Pl/Sql: Formatar a exibição de um CPF usando expressão regular
SELECT REGEXP_REPLACE('11122233344', '^(\d{3})(\d{3})(\d{3})(\d{2})$', '\1.\2.\3-\4') CPF
FROM DUAL;
Restrições: O campo deverá conter somente números.
segunda-feira, 25 de fevereiro de 2013
Oracle Pl/Sql: Extrair dia, mês, ano de uma data
SELECT EXTRACT(DAY FROM SYSDATE) AS DIA
,EXTRACT(MONTH FROM SYSDATE) AS MES
,EXTRACT(YEAR FROM SYSDATE) AS ANO
FROM DUAL;
Assinar:
Comentários (Atom)