Liado con INSERT

22/05/2006 - 19:14 por Bodescu | Informe spam
Alguien puede explicarme los pasos a seguir para insertar valores en una
tabla a partir de los datos recogidos en un formulario?

Puedo leerlos sin problemas, pero no logro que los guarde, y me temo que
necesito un repaso desde el principio...

Quien tiene tiempo y ganas? (dos recursos escasos hoy en dia...)

Gracias

Preguntas similare

Leer las respuestas

#1 Alberto Poblacion
22/05/2006 - 19:33 | Informe spam
"Bodescu" wrote in message
news:
Alguien puede explicarme los pasos a seguir para insertar valores en una
tabla a partir de los datos recogidos en un formulario?



Hay varias formas, usando o sin usar automatismos del diseñador, los
cuales a su vez dependen de la versión del Visual Studio.
Asumiendo que no quieres usar automatismos, para que no dependa de la
versión, vamos a ver cómo se hace con ADO.NET.

Necesitarás una conexión. Dado que ya lees datos, asumo que ya tienes la
conexión. Supongamos que sea "Dim conexion as SqlConnection", y que ya tiene
asignado el ConnectionString y que has hecho el conexion.Open().

Vamos a crear una sentencia INSERT para grabar en la BD:

Dim sentencia as String = "INSERT INTO LaTabla (Campo1, Campo2) VALUES
(@Valor1, @Valor2)"

Ahora la metemos en un SqlCommand:

Dim cmd as New SqlCommand(sentencia, conexion)

Ahora le asignamos valores. Supongamos que los campos son de tipo string
y que provienen de dos textboxes en el formulario:

cmd.Parameters.Add("@Valor1", TextBox1.Text)
cmd.Parameters.Add("@Valor2", TextBox2.Text)

Nota: Si usas la versión 2 del Framework, sustituye los anteriores "Add"
por "AddWithValue".

Ahora ya solo falta ejecutar la sentencia:

cmd.ExecuteNonQuery()

Finalmente, no se te olvide cerrar la conexión cuando termines de
utilizarla:

conexion.Close()
Respuesta Responder a este mensaje
#2 Bodescu
23/05/2006 - 10:23 | Informe spam
Gracias, me ha sido tremendamente util la respuesta. De hecho, me ha dado la
pista necesaria para sacar el asunto adelante...

Ahora solo me queda averigüar como me lo monto para que los resultados
desprendidos de una SELECT (oleDb) se guarden en una coleccion de comboBox...

Que te parece? Te atreves con una respuesta, o deberia abrir otro post?

Gracias por tu tiempo y por tus ganas de ayudar.

un saludo

"Alberto Poblacion" wrote:

"Bodescu" wrote in message
news:
> Alguien puede explicarme los pasos a seguir para insertar valores en una
> tabla a partir de los datos recogidos en un formulario?

Hay varias formas, usando o sin usar automatismos del diseñador, los
cuales a su vez dependen de la versión del Visual Studio.
Asumiendo que no quieres usar automatismos, para que no dependa de la
versión, vamos a ver cómo se hace con ADO.NET.

Necesitarás una conexión. Dado que ya lees datos, asumo que ya tienes la
conexión. Supongamos que sea "Dim conexion as SqlConnection", y que ya tiene
asignado el ConnectionString y que has hecho el conexion.Open().

Vamos a crear una sentencia INSERT para grabar en la BD:

Dim sentencia as String = "INSERT INTO LaTabla (Campo1, Campo2) VALUES
(@Valor1, @Valor2)"

Ahora la metemos en un SqlCommand:

Dim cmd as New SqlCommand(sentencia, conexion)

Ahora le asignamos valores. Supongamos que los campos son de tipo string
y que provienen de dos textboxes en el formulario:

cmd.Parameters.Add("@Valor1", TextBox1.Text)
cmd.Parameters.Add("@Valor2", TextBox2.Text)

Nota: Si usas la versión 2 del Framework, sustituye los anteriores "Add"
por "AddWithValue".

Ahora ya solo falta ejecutar la sentencia:

cmd.ExecuteNonQuery()

Finalmente, no se te olvide cerrar la conexión cuando termines de
utilizarla:

conexion.Close()



Respuesta Responder a este mensaje
#3 Alberto Poblacion
23/05/2006 - 10:43 | Informe spam
"Bodescu" wrote in message
news:
Ahora solo me queda averigüar como me lo monto para que los resultados
desprendidos de una SELECT (oleDb) se guarden en una coleccion de
comboBox...



No lo entiendo. ¿A qué te refieres con lo de la "coleccion de comboBox"?
¿Tienes varios combos que tienen que llenarse con distintos campos de la
Select? ¿O con distintos registros de la misma Select? ¿O con varias Select
diferentes?
Respuesta Responder a este mensaje
#4 Bodescu
23/05/2006 - 10:56 | Informe spam
Me explico:

Trato de llenar un combobox (items.add()) con el resultado de una select,
que me dara los nombres de los proveedores, por ejemplo. Asi, si se añade o
elimina un proveedor, la lista siempre estara actualizada...

Intento hacerlo con un foreach, algo parecido a esto:


foreach (string nombre in this.dsVendedores1.personal.Rows)
this.comboBox1.Items.Add(nombre);

Pero no acaba de tirar...

Gracias por interesarte de nuevo, siento ser tan abuson ;)

Un saludo
"Alberto Poblacion" wrote:

"Bodescu" wrote in message
news:
> Ahora solo me queda averigüar como me lo monto para que los resultados
> desprendidos de una SELECT (oleDb) se guarden en una coleccion de
> comboBox...

No lo entiendo. ¿A qué te refieres con lo de la "coleccion de comboBox"?
¿Tienes varios combos que tienen que llenarse con distintos campos de la
Select? ¿O con distintos registros de la misma Select? ¿O con varias Select
diferentes?




Respuesta Responder a este mensaje
#5 Alberto Poblacion
23/05/2006 - 11:25 | Informe spam
"Bodescu" wrote in message
news:
[...]
Intento hacerlo con un foreach, algo parecido a esto:

foreach (string nombre in this.dsVendedores1.personal.Rows)
this.comboBox1.Items.Add(nombre);



foreach (DataRow dr in this.dsVendedores1.personal.Rows)
this.ComboBox1.Items.Add(dr["Nombre"]);
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida