hahahaha,,,,  Andre,, 
eu quis dizer "tosco" pq pra vcs devem ser tosco de tao facil, mas pra mim tem 
muita importancia,, foi isso que quis dizer.... nao ia te escurraça, pq vc me 
mostrou o q realmente eu tava procurando.. 

Eh o seguinte para eu ter independencia de banco estou pensando em criar 
procedures nos meus dois bancos (Oracle e SS) pq imagino q a chamada para os 
dois bancos sejam iguais,.. o q muda eh o corpo da procedure.. Portando ja 
criei as procedures no SS e agora chegou a hora de crialas  no oracle.. e ae q 
ta o problema.. 

Estou utilizando o Oracle 10 e utilizando ADO (namespace oracle client no C#).

bom quem puder me adicionar no msn pra me ajudar, sera bem vindo.. 
[EMAIL PROTECTED]


********************************
***** Renan S. Nucci *****
***** Desenvolvedor *****
********************************
  ----- Original Message ----- 
  From: Andre Santos 
  To: oracle_br@yahoogrupos.com.br 
  Sent: Thursday, May 03, 2007 4:03 PM
  Subject: Re: [oracle_br] Criacao de sequence e dar select no novo valor 
gerado..


  Renan

  Hahaha... Nesse agradecimento do "exemplo tosco", pareceu que você estava me
  escorraçando. =^)

  Para saber como fazer a chamada da procedure, precisamos saber qual a
  linguagem que você utiliza para isso... VB com ADO? PL/SQL ?...

  [ ]

  André

  Em 03/05/07, Renan Nucci - CSM Soft <[EMAIL PROTECTED]> escreveu:
  >
  > Agradeco a todos que responderam em especial ao Andre que mandou esse
  > exemplo tosco de procedure q vai me ajuda a esclarecer muita coisa..
  >
  > Vou tentar seguir as recomendacoes de leitura do Chiappa, q entende
  > bastante do assunto, vi muita coisa sua na net..
  >
  > Agora soh mais uma duvida tosca..
  >
  > Como que eu chamo essa procedure, ,pois nao sei o que passar no segundo
  > parametro...
  >
  > call sp_teste('20',???);
  >
  > ????
  > []s
  >
  > ********************************
  > ***** Renan S. Nucci *****
  > ***** Desenvolvedor *****
  > ********************************
  > ----- Original Message -----
  > From: Andre Santos
  > To: oracle_br@yahoogrupos.com.br <oracle_br%40yahoogrupos.com.br>
  > Sent: Thursday, May 03, 2007 2:15 PM
  > Subject: Re: [oracle_br] Criacao de sequence e dar select no novo valor
  > gerado..
  >
  > Renan
  >
  > Mas não é difícil criar um trigger para fazer essa "amarração".
  > Vide o exemplo que acabei de mandar em resposta ao Marco.
  >
  > Há outros BD's que trabalham com o conceito de "sequence" também... DB2
  > (da
  > IBM), Postgre...
  > Inclusive, se não me engano, tanto SEQUENCE, como colunas IDENTITY, fazem
  > parte do padrão ANSI.
  > Claro que uma coluna "identity" poderia facilitar em alguns casos... mas,
  > pessoalmente, eu prefiro as "sequences".
  >
  > Além do que o mestre Chiappa já mencionou, há coisas que você pode com
  > sequences que não poderiam ser realizadas com identity.
  > Por exemplo, tabelas diferentes seguindo uma mesma seqüência.
  >
  > A procedure que você exemplificou, ficaria +/- assim no Oracle (versão 9i
  > ou
  > superior):
  >
  > CREATE OR REPLACE PROCEDURE sp_teste
  > (
  > cod IN VARCHAR2,
  > consulta OUT SYS_REFCURSOR
  > )
  > AS
  > BEGIN
  > OPEN consulta FOR
  > SELECT * FROM tabela WHERE codigo = :cod;
  > END sp_teste;
  > /
  >
  > [ ]'s
  >
  > André
  >
  > Em 03/05/07, Renan Nucci - CSM Soft <[EMAIL 
PROTECTED]<nucci.csm%40terra.com.br>>
  > escreveu:
  > >
  > > Blz,, agradeço as respostas,,
  > > agora sinceramente, acho o cumulo o banco de dados mais utilizado do
  > mundo
  > > nao ter uma maneira mais facil para esse tipo de problemas....
  > >
  > > Um outro ponto que eu nao estou acertando eh em relacao a procedures..
  > >
  > > Pois se tenhu que fazer um select dentro de uma procedure eu preciso
  > > declarar um vetor ou jogar o resultado do select em uma variavel???
  > >
  > > como faço pra declarar uma variavel pra acertar a procedure abaixo?
  > >
  > > create procedure teste (:cod in varchar)
  > > is
  > > begin
  > > select * from tabela where codigo = :cod;
  > > end
  > >
  > > ********************************
  > > ***** Renan S. Nucci *****
  > > ***** Desenvolvedor *****
  > > ***** CSM Software *****
  > > ********************************
  > > ----- Original Message -----
  > > From: Andre Santos
  > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br>
  > > Sent: Thursday, May 03, 2007 11:02 AM
  > > Subject: Re: [oracle_br] Criacao de sequence e dar select no novo valor
  > > gerado..
  > >
  > > Só acrescentando, ao que o Marco já explicou, é possível criar um
  > trigger
  > > para "insert", obtendo o valor da sequence (dessa forma ficaria bem
  > > semelhante ao uma coluna do tipo "autonumeração").
  > >
  > > [ ]'s
  > >
  > > André
  > >
  > > Em 02/05/07, FERNANDES Marco A SOFTTEK <
  > > [EMAIL PROTECTED]<mfernandes%40fornecedores.confab.com.br>
  > <mfernandes%40fornecedores.confab.com.br>>
  > > escreveu:
  > >
  > > > Renan,
  > > > pequeno detalhe.... no seu select vc não usa mais a sequence !
  > > > Use-a apenas no insert.
  > > >
  > > > O currentval da sequence não é o que vc procura.
  > > > Vc precisa especificar o código na busca e não o valor da sequence.
  > > > Como te disse, a sequence não tem relação com a tabela. É apenas um
  > > > artifício para controlar um sequencia numérica.
  > > >
  > > > Portanto, não use o currentval no select, pois ele não serve para
  > isso.
  > > >
  > > > Caso vc queira consultar o último registro inserido utilize a cláusula
  > > > where usando max(campo_id).
  > > >
  > > > valeu, abraço,
  > > > Marco.
  > > >
  > > > ________________________________
  > > >
  > > > From: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br>[mailto:
  > > > oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br>] On Behalf
  > > > Of PUB: Renan Nucci - CSM Soft
  > > > Sent: quarta-feira, 2 de maio de 2007 17:52
  > > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br>
  > > > Subject: Re: [oracle_br] Criacao de sequence e dar select no novo
  > valor
  > > > gerado..
  > > >
  > > > Criei conforme vossa orientação, mas nao consigo selecionar o que foi
  > > > inserido..
  > > > O que esta errado no que fiz abaixo??
  > > >
  > > > /*cria a sequencia*/
  > > > create sequence produtos_codigo increment by 1 minvalue 1 nomaxvalue
  > > start
  > > > with 1
  > > > commit
  > > >
  > > > /*tenta nserir usando sequence*/
  > > > ALTER SESSION SET NLS_DATE_FORMAT = 'YY/MM/DD' /*altera formato da
  > > > sessao*/
  > > > insert into Produtos values(produtos_codigo.NEXTVAL, 'produto1', 5, 2,
  > > > '2001-01-01') ;
  > > > commit;
  > > > /*seleciona o que foi inserido*/
  > > > select * from produtos where codigo = produtos_codigo.CURRVAL;
  > > >
  > > > ********************************
  > > > ***** Renan S. Nucci *****
  > > > ***** Desenvolvedor *****
  > > > ***** CSM Software *****
  > > > ********************************
  > > > ----- Original Message -----
  > > > From: FERNANDES Marco A SOFTTEK
  > > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br> <mailto:
  > > > oracle_br%40yahoogrupos.com.br>
  > > > Sent: Wednesday, May 02, 2007 5:10 PM
  > > > Subject: RE: [oracle_br] Criacao de sequence e dar select no novo
  > valor
  > > > gerado..
  > > >
  > > > Renan, a tabela não tem ligação direta com a sequence.
  > > > A tabela tem uma coluna tipo Number normal.
  > > > O vínculo estará apenas no insert na tabela da seguinte forma:
  > > >
  > > > insert into tabela (coluna_ID, coluna_2, coluna_3)
  > > > values (nome_sequence.nextval(), valor_2, valor_3);
  > > >
  > > > A sequence quando criada vc especifica o valor inicial, incremento,
  > > > máximo, ciclicidade, etc.
  > > > Portanto, vc deve iniciar com 1 e máximo de 99999 onde o número de
  > noves
  > > > depende do
  > > > tamanho do seu number... se for number(3) o máximo é 999.... o
  > > incremento
  > > > põe 1, ou seja,
  > > > soma sempre 1 (incremento normalmente usado).
  > > >
  > > > Ou seja, na criação da tabela não tem segredo... cria ela normal.
  > > > Aí nos inserts tem que tratar... não é recomendado reaproveitamento de
  > > > chave nesse
  > > > caso pois vc teria que tratar também a sequence.
  > > >
  > > > Eu já vi muita gente usar sequence mas tbem já vi muita gente usar o
  > > > select max + 1.
  > > >
  > > > Abraço,
  > > > Marco.
  > > >
  > > > ________________________________
  > > >
  > > > From: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br><mailto:
  > > > oracle_br%40yahoogrupos.com.br> 
[mailto:oracle_br@yahoogrupos.com.br<oracle_br%40yahoogrupos.com.br>
  > <oracle_br%40yahoogrupos.com.br>
  > > <oracle_br%40yahoogrupos.com.br><mailto:
  > > > oracle_br%40yahoogrupos.com.br> ] On Behalf Of PUB: Renan Nucci - CSM
  > > Soft
  > > > Sent: quarta-feira, 2 de maio de 2007 16:45
  > > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br> <mailto:
  > > > oracle_br%40yahoogrupos.com.br>
  > > > Subject: Re: [oracle_br] Criacao de sequence e dar select no novo
  > valor
  > > > gerado..
  > > >
  > > > O que me impediu de criar a sequence eh o primeiro valor, pois nas
  > > minhas
  > > > tentativas estavao dando erros. lembro de ter lido que para usar uma
  > > > sequence o campo deve ter o valor gerado pela sequence.. :/
  > > >
  > > > eh por isso q pedi um exemplo que me mostrasse a "traducao" de uma
  > > tabela
  > > > do ss para o oracle..
  > > >
  > > > ********************************
  > > > ***** Renan S. Nucci *****
  > > > ***** Desenvolvedor *****
  > > > ***** CSM Software *****
  > > > ********************************
  > > > ----- Original Message -----
  > > > From: FERNANDES Marco A SOFTTEK
  > > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br> <mailto:
  > > > oracle_br%40yahoogrupos.com.br> <mailto:oracle_
  > br%40yahoogrupos.com.br>
  > > > Sent: Wednesday, May 02, 2007 4:04 PM
  > > > Subject: RE: [oracle_br] Criacao de sequence e dar select no novo
  > valor
  > > > gerado..
  > > >
  > > > Para se encriptar uma procedure é necessário o uso da ferramenta WRAP
  > > > existente no oracle... cada versão de banco tem sua própria ferramenta
  > > > wrap.
  > > >
  > > > Dá uma olhada no Help desse cara pra pegar os detalhes.
  > > >
  > > > Abraço,
  > > > Marco.
  > > >
  > > > ________________________________
  > > >
  > > > From: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br><mailto:
  > > > oracle_br%40yahoogrupos.com.br> <mailto:oracle_
  > br%40yahoogrupos.com.br>
  > > > [mailto:oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br><mailto:
  > > > oracle_br%40yahoogrupos.com.br> <mailto:oracle_
  > br%40yahoogrupos.com.br>
  > > ]
  > > > On Behalf Of PUB: Rafael Alexandre Schmitt
  > > > Sent: quarta-feira, 2 de maio de 2007 15:54
  > > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br> <mailto:
  > > > oracle_br%40yahoogrupos.com.br> <mailto:oracle_
  > br%40yahoogrupos.com.br>
  > > > Subject: Re: [oracle_br] Criacao de sequence e dar select no novo
  > valor
  > > > gerado..
  > > >
  > > > Olá,
  > > >
  > > > Bom, para criar uma sequence você usa o create sequence , existem
  > vários
  > > > exemplos disponíveis na net.
  > > > Com a sequence criada você pode usar o nextval para retornar o próximo
  > > > valor se é isso que você deseja.
  > > >
  > > > Quanto a encriptar o corpo da procedure eu não sei como isso pode ser
  > > > feito.
  > > >
  > > > --
  > > > Rafael Alexandre Schmitt
  > > > [EMAIL PROTECTED] <rafael%40hbtec.com.br> <rafael%40hbtec.com.br>
  > <rafael%40hbtec.com.br>
  > > <mailto:rafael% <rafael%25> <rafael%25> <rafael%25>
  > > > 40hbtec.com.br> <mailto:rafael% <rafael%25> <rafael%25>
  > <rafael%25>40hbtec.com.br>
  > > <mailto:rafael% <rafael%25> <rafael%25><rafael%25>
  > > > 40hbtec.com.br> || www.hbtec.com.br
  > > > Blumenau - Santa Catarina
  > > >
  > > > ----- Original Message -----
  > > > From: Renan Nucci - CSM Soft
  > > > To: oracle_br@yahoogrupos.com.br 
<oracle_br%40yahoogrupos.com.br><oracle_br%40yahoog
  > rupos.com.br><oracle_br%40yahoog
  > > rupos.com.br> <mailto:
  > > > oracle_br%40yahoogrupos.com.br> <mailto:oracle_
  > br%40yahoogrupos.com.br>
  > > > <mailto:oracle_br%40yahoogrupos.com.br>
  > > > Sent: Wednesday, May 02, 2007 3:31 PM
  > > > Subject: Re: [oracle_br] Criacao de sequence e dar select no novo
  > valor
  > > > gerado..
  > > >
  > > > Esqueci de dizer tb que preciso de criptografar o texto dessa
  > procedure,
  > > > para nao se conseguir ver o corpo da procedure....
  > > >
  > > > por isso q na procedure de exemplo que mandei, existe o with
  > > encryption...
  > > >
  > > >
  > > > obrigado
  > > >
  > > > ********************************
  > > > ***** Renan S. Nucci *****
  > > > ***** Desenvolvedor *****
  > > > ***** CSM Software *****
  > > > ********************************
  > > > ----- Original Message -----
  > > > From: Renan Nucci - CSM Soft
  > > > To: oracle_br
  > > > Sent: Wednesday, May 02, 2007 2:23 PM
  > > > Subject: [oracle_br] Criacao de sequence e dar select no novo valor
  > > > gerado..
  > > >
  > > > Boa tarde pessoal,
  > > >
  > > > Estou precisando de criar no oracle algumas tabelas que tenho no sql
  > > > server, soh que o funionamento das mesmas devem ser identico.
  > > >
  > > > no SS tenho essa tabela por exemplo,
  > > >
  > > > Create table Produtos(
  > > > codigo int primary key IDENTITY (1, 1) not null ,
  > > > descricao varchar(100),
  > > > valor Decimal(18,2),
  > > > qtde int,
  > > > datacad datetime
  > > > )
  > > >
  > > > e tenho uma procedure assim:
  > > >
  > > > create procedure Insert_Cad_Produtos
  > > > @descricao varchar(100),
  > > > @Valor decimal(18,2),
  > > > @Qtde int,
  > > > @Datacad datetime
  > > > with encryption
  > > > AS
  > > > Begin
  > > > insert into Produtos (descricao, Valor, Qtde,
  > dataCad)values(@descricao,
  > > > @Valor, @Qtde, @datacad)
  > > > select * from Produtos where Codigo = @@Identity
  > > > end;
  > > >
  > > > Sempre que for inserir eu chamo essa procedure, que apos a insercao da
  > > um
  > > > select no item inserido...
  > > >
  > > > Como que eu crio uma tabela no oracle com a funcionalidade do identity
  > > do
  > > > SS????
  > > > e como ficaria essa procedure???
  > > >
  > > > Pelo q ja li, creio q vou ter de criar uma sequence, mas nao sei como
  > > usar
  > > > isso, pois nao manjo de oracle, estou vendo agora..
  > > >
  > > > Alguem poderia fazer esse grande favor de mandar o script da tabela e
  > da
  > > > proceure para o oracle??
  > > >
  > > > obrigado
  > > >
  > > > ********************************
  > > > ***** Renan S. Nucci *****
  > > > ***** Desenvolvedor *****
  > > > ***** CSM Software *****
  > > > ********************************
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > ----------------------------------------------------------
  > > > Esta mensagem foi verificada pelo E-mail Protegido Terra.
  > > > Scan engine: McAfee VirusScan / Atualizado em 02/05/2007 / Versão:
  > > 5.1.00
  > > > /5022
  > > > Proteja o seu e-mail Terra: http://mail.terra.com.br/ <
  > > > http://mail.terra.com.br/> <http://mail.terra.com.br/ <
  > > > http://mail.terra.com.br/> > <http://mail.terra.com.br/ <
  > > > http://mail.terra.com.br/> <http://mail.terra.com.br/ <
  > > > http://mail.terra.com.br/> > >
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > > [As partes desta mensagem que não continham texto foram removidas]
  > > >
  > > >
  > > >
  > >
  > > [As partes desta mensagem que não continham texto foram removidas]
  > >
  > > [As partes desta mensagem que não continham texto foram removidas]
  > >
  > >
  > >
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  > [As partes desta mensagem que não continham texto foram removidas]
  >
  > 
  >

  [As partes desta mensagem que não continham texto foram removidas]



   

[As partes desta mensagem que não continham texto foram removidas]

Responder a