Ir para conteúdo
Fórum Script Brasil
  • 0

Procedures e VB


Guest --Victor --

Pergunta

Guest --Victor --

Bom dia pessoal, estou com dúvidas sobre stored procedures Oracle e como chamá-las no VB.

Tenho a seguinte procedure no Oracle, ex:

PROCEDURE SP_INSERT_USER_TEST (pintID           IN teste_01.tst_id%TYPE,
                               pstrFirstName   IN teste_01.tst_firstname%TYPE,
                               pstrLastName    IN teste_01.tst_lastname%TYPE,
                               pstrPhoneNumber IN teste_01.tst_phonenumber%TYPE) IS

    intID               teste_01.tst_id%TYPE;

    blnCondition        BOOLEAN;

BEGIN

    BEGIN

        blnCondition := TRUE;

        SELECT TST_ID INTO intID
          FROM TESTE_01
         WHERE TST_ID = pintID;

    EXCEPTION

        WHEN no_data_found THEN
            blnCondition := FALSE;

    END;

    IF blnCondition = FALSE THEN

        -- Inserir
        INSERT INTO TESTE_01
             VALUES (pintID,
                     pstrFirstName,
                     pstrLastName,
                     pstrPhoneNumber,
                     SYSDATE);

    END IF;

END;

-----

Como posso executa-la no VB???

Obrigado desde já!

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

nunca usei Oracle, mas pelo menos as procedures do SQL sempre chamei só escrevendo o nome dela e passando os parametros. exemplo:

cn.Execute "SP_INSERT_USER_TEST param1, param2, param3, param4"

mas tb pode ser pelo objeto Command (caso você esteja usando ADO).

você declara o objeto command, e na propriedade CommandType, você seta adCmdStoredProc.

ai você pode acessar os parametros pela propriedade Parameters.

pode fazer uma busca por ai q devem ter exemplos.

qualquer problema, poste.

Link para o comentário
Compartilhar em outros sites

  • 0

Tentei fazer o que você recomendou ao colega porém ainda não obtive sucesso, será que você poderia me dar uma ajuda??

Esse é o meu código:

Sub Button2_Click()
'
' Button1_Click Macro
' Macro recorded 25/3/2008 by lilian
'
    Dim cn As New ADODB.Connection 'conexão
    Dim rs As New ADODB.Recordset  'comando de consultas sql.
    Dim pc As New ADODB.Command    'comando de execuçao de procedures.
    
    
    
    cn.CursorLocation = adUseClient
    cn.Open "Driver={Microsoft ODBC for Oracle};Server= 139.82.24.105;uid=sbbhml;pwd=sbbhml;"
    'rs.Open "select cena_nr_numero_cenario, cena_dt_periodo_inicio, cena_dt_periodo_fim from cenario", cn
    pc.Execute "GET_SCENA_FORECAST start_date, end_date, present_date"

Sheet4.Select
Range("a1").Value = "cena_nr_numero_cenario"
Range("b1").Value = "cena_dt_periodo_inicio"
Range("c1").Value = "cena_dt_periodo_fim"

i = 2
If Not rs.EOF Then
     Do While Not rs.EOF
        Range("a" & i).Value = rs(0)
        Range("b" & i).Value = rs(1)
        Range("c" & i).Value = rs(2)
        rs.MoveNext
        i = i + 1
    Loop
End If
  
    rs.Close
    cn.Close
'
End Sub

Editado por kuroi
Adicionar tag CODE
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...