none
Store Procedure Update de dos textbox del mismo campo asp.net c# RRS feed

  • Pregunta

  • Buenas Tardes: tengo el siguiente codigo en asp.net y hago un update en sql "uodate tabla set folios@folios where id@id", y ok me actualiza mi folio de txtf,pero quisera que tambien me actualice el folio del txtaux, COMO SERIA, LO PONGO COMO ESTA EN COMENTARIOS Y ME MARCA UN ERROR DE "System.Data.SqlClient.SqlException: Procedure or function Incremento has too many arguments specified".

    Alguien sabe como seria el store procedure o en codigo vb.net??????

    protected void btnmov_Click(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(sql);
            SqlCommand cmd = new SqlCommand();
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "Incremento";
            cmd.Parameters.Add("@id", SqlDbType.Int).Value = lblmensaje.Text.Trim();
            cmd.Parameters.Add("@folios", SqlDbType.Int).Value = txtf.Text.Trim();
          //*comentarios // cmd.Parameters.Add("@folios", SqlDbType.Int).Value = txtaux.Text.Trim();
            cmd.Connection = con;
            try
            {
                con.Open();
                cmd.ExecuteNonQuery();
                Response.Write("Record Update successfully");
            }
            catch (Exception ex)
            {
                throw ex;
            }
            finally
            {
                con.Close();
                con.Dispose();
            }

    viernes, 18 de marzo de 2016 19:26

Respuestas

  • wow lo he logrado asi:

    (@id int, @folios int, @folios2 int, @id2 int
     )
    AS
    BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;
    SELECT * FROM Cat order by  id
    UPDATE Cat SET folios=@folios where id=@id
    UPDATE CatContenedor SET folio2=@folios2 where id=@id2

    :) bendiciones a todos los del foro gracias siempre por su ayuda y a ti leandro tmb dios te bandiga

    viernes, 18 de marzo de 2016 20:13

Todas las respuestas

  • hola

    como defines los parametros del procedure ? porque parece ser que este tiene menos parametros de los que asignas desde codigo

    saludos

    Leandro Tuttini

    Blog
    MVP Profile
    Buenos Aires
    Argentina

    viernes, 18 de marzo de 2016 19:31
  • asi lo hago:

    ALTER PROCEDURE [dbo].[Incremento]
    -- Add the parameters for the stored procedure here
    (@id int, @folios int
     )
    AS
    BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;
    SELECT * FROM Catorder by  id
    UPDATE Cat SET folios=@folios where id=@id

    asi en sql, y en vb.net lo pongo asi:

    SqlConnection con = new SqlConnection(sql);
            SqlCommand cmd = new SqlCommand();
            cmd.CommandType = CommandType.StoredProcedure;
            cmd.CommandText = "Incremento";
            cmd.Parameters.Add("@id", SqlDbType.Int).Value = lblmensaje.Text.Trim();
            cmd.Parameters.Add("@folios", SqlDbType.Int).Value = txtf.Text.Trim();
             cmd.Parameters.Add("@folios", SqlDbType.Int).Value = txtaux.Text.Trim();      //*he aqui se repiten       cmd.Parameters.Add("@id", SqlDbType.Int).Value = lblidaux.Text.Trim();

    aqui ya pongo dos folios con datos diferentes en textbox y me marca ese error????

    viernes, 18 de marzo de 2016 20:04
  • wow lo he logrado asi:

    (@id int, @folios int, @folios2 int, @id2 int
     )
    AS
    BEGIN
    -- SET NOCOUNT ON added to prevent extra result sets from
    -- interfering with SELECT statements.
    SET NOCOUNT ON;
    SELECT * FROM Cat order by  id
    UPDATE Cat SET folios=@folios where id=@id
    UPDATE CatContenedor SET folio2=@folios2 where id=@id2

    :) bendiciones a todos los del foro gracias siempre por su ayuda y a ti leandro tmb dios te bandiga

    viernes, 18 de marzo de 2016 20:13