Como criar uma stored procedure no oracle 10g?

Estou tentando criar uma sp, no oracle mas esta aparecendo o seguinte erro:
ERROR na linha 4: PLS-00428: é esperada uma cláusula INTO nesta instrução SELECT

SP:
CREATE OR REPLACE PROCEDURE exemplo
as
begin
select * from funcionario;
end;

A clausula into não é opcional em stored procedures do Oracle:

[code]
CREATE OR REPLACE PROCEDURE exemplo
AS
BEGIN
DECLARE rowFunc funcionario%rowtype;

SELECT * INTO rowFunc
FROM funcionario;
END;[/code]

Se eu não me engano fica assim, faz muito tempo que não uso Oracle.

só corrigindo…

CREATE OR REPLACE PROCEDURE exemplo   
AS   
   rowFunc funcionario%rowtype;   

BEGIN   
    
   SELECT * INTO rowFunc   
   FROM funcionario;   
END;  

DECLARE só precisa se for um bloco pl anonino…

Valeu!!

é um pouco diferente do Sql Server.

E para executar:

Coloquei exec exemplo, não deu
tentei:
begin
execute exemplo
end

ou
begin
exemplo();
end

Para executar no SQL*Plus:

execute exemplo;

Se for em outra ferramenta, você pode executar como bloco anônimo:

BEGIN
exemplo;
END;
/

Outra coisa, o que você está tentando fazer exatamente?
O Oracle, diferentemente do SQL Server, não devolve um result set diretamente de uma stored procedure. Você precisa devolver o result set em um parâmetro OUT (tipo REF CURSOR) ou em uma tabela temporária (GLOBAL TEMPORARY TABLE).

[quote=alves.Felipe]só corrigindo…

CREATE OR REPLACE PROCEDURE exemplo   
AS   
   rowFunc funcionario%rowtype;   

BEGIN   
    
   SELECT * INTO rowFunc   
   FROM funcionario;   
END;  

DECLARE só precisa se for um bloco pl anonino…[/quote]

Bem que falei que tava um pouco enferrujado, heheehe.

Olá,

Realmente é assim, só que esta aparecendo um erro.
Pelo o que eu pesquisei terei que criar um cursor, pois o select retorna mais de uma linha.

Valeu pelas dicas!!!