Criar funcao e procedimento?
Oi pessoal,sou iniciante e estou estudando umas questoes que o meu professor passou... Tipo ele fez um programa. Que não preciso coloca aqui. Ai ele pediu pra criar uma sintataxe. Seguintes questoes.. 1. Crie uma funcao que dado o titulo de um objeto de arte retorne o nome do artista que o criou.faca o tratamento de excecoes adequado. 2. Crie um procedimento que dado o nomede um artista,verifique o paisdeorigen dele e se ele for ingles,incremente o custo dos seus objetos de arte em 10% em outeo caso,incremente o custo de 5%. Faca o tratamento de exececoes adequado. Podem me ajudar a fazer? E descupem pelos erros de portugues to no cel...
-
- Rank: Analista Sênior
- Mensagens: 153
- Registrado em: Ter, 27 Mai 2008 1:31 pm
- Localização: Rio de Janeiro - RJ
Alex Silva
Analista de Sistemas
11i.10 Applications Developer Implementation Champion
11i.10 E-Business Suite Integration Champion
Analista de Sistemas
11i.10 Applications Developer Implementation Champion
11i.10 E-Business Suite Integration Champion
Bom dia stephany,
Podemos ajudar sim, diga o que precisa.
Já começou a fazer o programa? Quais são suas dúvidas?
Você vai ter uma stored procedure e dentro dela vai ter suas functions.
Começa a desenvolver e posta suas dúvidas para podermos ajudar.
Podemos ajudar sim, diga o que precisa.
Já começou a fazer o programa? Quais são suas dúvidas?
Você vai ter uma stored procedure e dentro dela vai ter suas functions.
Começa a desenvolver e posta suas dúvidas para podermos ajudar.
O que eu entendi foi: ta certo? Essa primeira questao
create fuction objeto_de_arte return artista begin return (nome_artista) end select objeto_de_arte where
Tem que selecionar o nome ou o titulo?
create function objeto_de_arte
titulo varchar,nome char,v_nome)
Return varchar is
v_nome
begin
end v_nome;
Dessisto....
-
- Rank: DBA Pleno
- Mensagens: 248
- Registrado em: Sex, 06 Fev 2009 3:02 pm
- Localização: ERECHIM - RS
se entendi bem você precisa de algo assim:
create or replace function Objeto_de_arte (p_titulo in varchar2 ) return varchar2
Is
--
vs_artista varchar2(120);
--
Begin
Begin
select Nome_Artista into vs_artista
from minha_tabela
where Titulo_Filme = p_titulo
Exception
When others then
vs_artista := Null;
End;
Return(vs_artista);
End ;
Eu queria aproveitar esse tópico para tirar uma dúvida: o IN em um procedure é opcional, né? Estou perguntando porque eu criei um com parâmetros de entrada sem o IN, e funcionou perfeitamente.
create or replace procedure pro_produto_insert(pro_numero number)
is
begin
insert into produto values(seq_venda.nextval, pro_numero, sysdate);
end;
-
- Rank: DBA Pleno
- Mensagens: 248
- Registrado em: Sex, 06 Fev 2009 3:02 pm
- Localização: ERECHIM - RS
ok, até funciona pois ele deve interpretar como parametro de entrada. Mas o ideal é que você sempre siga a Sintaxe correta cfe abaixo:
When you create a procedure or function, you may define parameters. There are three types of parameters that can be declared:
IN - The parameter can be referenced by the procedure or function. The value of the parameter can not be overwritten by the procedure or function.
OUT - The parameter can not be referenced by the procedure or function, but the value of the parameter can be overwritten by the procedure or function.
IN OUT - The parameter can be referenced by the procedure or function and the value of the parameter can be overwritten by the procedure or function.
Obrigado, Marlon!
Wilson
Wilson
-
- Informação
-
Quem está online
Usuários navegando neste fórum: Google [Bot] e 4 visitantes