none
Como insertar datos desde un combobox a SQL SERVER RRS feed

Todas las respuestas

  • Hola que tal!

    Yo lo hago asi: (en vb, pero supongo te servira)

    Creas tu formulario con un label y un combobox 

    Creas un procedimiento almacenado para insertar, algo asi:
    Create Procedure spu_Datos

    @Lugar Nacimiento

    Insert into Datos

    ( LugarNacimiento)

    values

    ( @LugarNacimiento)

    Y esto va en tu código para que lo cache "ddlLugarNacimiento" es el ID de tu combobox

     cmd.Parameters.Add("@LugarNacimiento", SqlDbType.VarChar).Value = ddlLugarNac.Text



    gaby


    • Editado Gabriela1403 viernes, 21 de junio de 2019 15:15
    • Propuesto como respuesta Carlos_Ruiz_M martes, 25 de junio de 2019 14:36
    viernes, 21 de junio de 2019 15:12
  • Una precaución con esto: El combobox admite (dependiendo de cómo lo hayas configurado) que se le introduzcan datos de dos maneras: o bien tecleándolos a mano en la "cajs de texto" del combo, o bien seleccionando una de las opciones de la lista desplegable. Cada una de las dos cosas te las entrega de forma distinta: Si han tecleado algo, te llega el .SelectedIndex con un -1, y el .Text tiene el valor tecleado. Pero si seleccionan algo en la lista, te llega .SelectedIndex>=0  y el item seleccionado está en SelectedItem. Si los items que has cargado no son de tipo string, tienes que extraer del Item el valor que quieres grabar.

    Suponiendo que los items sean de tipo String o que devuelvan un valor correcto con ToString, puedes tomar el valor así:

    Dim valor as String = ComboBox1.Text

    If ComboBox1.SelectedIndex>=0 Then valor = ComboBox1.SelectedItem.ToString()

    A partir de aqui, ya te olvidas de que se trata de un Combo. En la variable "valor" tienes la cadena de texto que hay que salvar, y esa la salvas en base de datos usando la misma tecnica que estes utilizando en tu programa para grabar todas las demas cadenas, sin tener en cuenta el hecho de que proviene de un Combo.

    • Propuesto como respuesta Carlos_Ruiz_M martes, 25 de junio de 2019 14:35
    viernes, 21 de junio de 2019 16:02