none
conectar procedimiento almacenado con la DAL RRS feed

  • Pregunta

  • Hola, necesito que me ayuden con lo siguiente, de antemano gracias por cualquier comentario.

    tengo un procedimiento almacenado que consulta mi base de datos para buscar si hay una cedula repetida:

    ALTER PROCEDURE [dbo].[sp_BuscarPersona]
    @Cedula int
    AS
    BEGIN
    DECLARE @RESULTADO INT

    IF EXISTS (SELECT Cedula FROM Persona WHERE Cedula = @Cedula)

    SET @RESULTADO = 1

    ELSE

    SET @RESULTADO = 0

    return @RESULTADO
    END

    y tengo este codigo en la DAL donde hago las conexiones

    public string ConsultarCedula(Persona varPersona)
    {
    string rpta = "";
    SqlConnection sqlcon = new SqlConnection();

    try
    {
    //establezco la conexion
    sqlcon.ConnectionString = Conexion.cn;

    //abro la conexion
    sqlcon.Open();

    //establezco comando
    SqlCommand sqlCmd = new SqlCommand();
    sqlCmd.Connection = sqlcon;
    sqlCmd.CommandText = "spD_BuscarPersona";
    sqlCmd.CommandType = CommandType.StoredProcedure;

    //valores para parametro @Cedula del procedimiento almacenado

    SqlParameter sqlParCedula = new SqlParameter();
    sqlParCedula.ParameterName = "@Cedula";
    sqlParCedula.SqlDbType = SqlDbType.Int;
    sqlParCedula.Value = varPersona.cedula;
    sqlCmd.Parameters.Add(sqlParCedula);

    //ejecutamos el commando
    rpta = sqlCmd.ExecuteNonQuery() == 0 ? "OK" : "La persona ya existe en la base de datos";
    }
    catch (Exception ex)
    {
    rpta = ex.Message;
    }
    finally
    {
    if (sqlcon.State == ConnectionState.Open)
    sqlcon.Close();
    }
    return rpta;
    }


    mi pregunta es, que le hace falta al codigo para que sea funcional.


    Muchas gracias
    lunes, 13 de junio de 2011 16:17

Respuestas

Todas las respuestas