locked
Botão para executar uma Stored Procedure RRS feed

  • Pergunta

  • Bom dia, tenho uma Stored Procedure e preciso executala atravé de um botão, como faço isso?
    Minha stored Procedure é a seguinte:

    ALTER PROCEDURE ApagaProdutos 
              @data datetime = NULL,
              @dias int = 1
         AS
             if @data is null 
                -- Apaga produtos baseado no número de dias
                Delete from carro Where data <= DateAdd(day, (@dias * (-1)), getdate())
             else
                -- apaga produtos baseados na data informada
                Delete from carro Where data <= @data
    

    Tenho que configurar um botão em uma pagina feita em vb.net e c#.

    Qualquer ajuda sera bem vinda, muito obrigado..
    quarta-feira, 11 de novembro de 2009 12:55

Respostas

  • Olá Renato,

    Bom, a chamada é bem simples, veja o exemplo abaixo:

    SqlConnection sqlConnection1 = new SqlConnection("Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;");
    SqlCommand cmd = new SqlCommand();
    Int32 rowsAffected;
    
    cmd.CommandText = "StoredProcedureName";
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = sqlConnection1;
    
    sqlConnection1.Open();
    
    rowsAffected = cmd.ExecuteNonQuery();
    
    sqlConnection1.Close();


    Assim, este é um exemplo que eu peguei no seguinte link:

    Resumindo, a idéia é essa. Tem que fazer alguns testes aí.


    Abraço!!

    Classifiquem as respostas. O Fórum agradece!!
    quinta-feira, 12 de novembro de 2009 01:38

Todas as Respostas

  • Bom dia Renato,

    A maioria aqui é especialista em SQL, mas vamos tentar ajudar.

    Dá uma olhada nesses links:


    Abraço!!

    Classifiquem as respostas. O Fórum agradece!!
    quarta-feira, 11 de novembro de 2009 13:01
  • Renato,

    Você deseja executar esta stored procedure dentro de uma aplicação.

    Se for isso é simples, basta você ter um componente que chame a procedure dentro da sua aplicação e você passe os valores necessários como parâmetros de entrada.

    Caso a sua procedure não tenha parâmetros basta chamar somente a mesma.
    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    quarta-feira, 11 de novembro de 2009 13:03
  • Muito obrigado pela resposta rapida,

    Minha sp não tem parametros, e o problema esta sendo justamente em chamar essa procedure atraves de um botao em c#, como o alexandre falou acima ai a maioria é especialista em SQL, mas se puderem me dar uma ajuda, sera muito bem vinda. 
    quarta-feira, 11 de novembro de 2009 13:15
  • Renato,

    A algum tempo não trabalho mais como Desenvolvedor, mas nas minhas aplicações eu utilizava um componente para acessar a procedure no banco de dados e na aplicação eu executava este componente.
    Pedro Antonio Galvão Junior - MVP - Windows Server System - SQL Server/Coordenador de Projetos/DBA
    quarta-feira, 11 de novembro de 2009 13:28
  • Olá Renato,

    Bom, a chamada é bem simples, veja o exemplo abaixo:

    SqlConnection sqlConnection1 = new SqlConnection("Data Source=myServerAddress;Initial Catalog=myDataBase;User Id=myUsername;Password=myPassword;");
    SqlCommand cmd = new SqlCommand();
    Int32 rowsAffected;
    
    cmd.CommandText = "StoredProcedureName";
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Connection = sqlConnection1;
    
    sqlConnection1.Open();
    
    rowsAffected = cmd.ExecuteNonQuery();
    
    sqlConnection1.Close();


    Assim, este é um exemplo que eu peguei no seguinte link:

    Resumindo, a idéia é essa. Tem que fazer alguns testes aí.


    Abraço!!

    Classifiquem as respostas. O Fórum agradece!!
    quinta-feira, 12 de novembro de 2009 01:38