Foros del Web » Programación para mayores de 30 ;) » .NET »

Dataset

Estas en el tema de Dataset en el foro de .NET en Foros del Web. Hola, soy nueva en este foro y quería consultaros una duda. Me gustaría saber como insertar datos en una tabla mediante un formulario en el ...
  #1 (permalink)  
Antiguo 11/04/2005, 14:39
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Dataset

Hola, soy nueva en este foro y quería consultaros una duda.
Me gustaría saber como insertar datos en una tabla mediante un formulario en el que se tiene
que registrar el usuario usando dataset. He creado el dataset de la tabla y enlazado los textbox a cada
campo de la tabla de la b.d. pero ahora no sé q código poner para q al dar al botón d envíar se inserten los datos.
Agradecería si m pudierais ayudar.

Un saludo
  #2 (permalink)  
Antiguo 12/04/2005, 03:30
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
Para insertar los datos en una tabla d euna bd no andes enlazando textbox con la tabla ni nada de eso

te pongo un ejemplo mio que trabaja con sql server

dim cn as System.Data.SqlClient.SqlConnection
cn=conexion()
cn.open()
DIM cmd AS System.Data.SqlClient.SqlCommand
cmd = New System.Data.SqlClient.sQLCommand()
cmd.Connection = cn
cmd.CommandText = "INSERT INTO PROFESORES (dni,apellidos,nombre,email,direccion"& _
",cp,municipio,telefono1,telefono2,fechanac,especi alidades"& _
",descripcion,provincia) VALUES(@p1,@p2,"& _
"@p3,@p4,@p5,@p6,@p7,@p8,@p9,@p10,@p11,@p12,@p 13)"
cmd.Parameters.Add("@p1", txtDni.text)
cmd.Parameters.Add("@p2", txtapellidos.Text)
cmd.Parameters.Add("@p3", txtnombre.Text)
cmd.Parameters.Add("@p4", txtemail.Text)
cmd.Parameters.Add("@p5", txtDIRECCION.Text)
cmd.Parameters.Add("@p6", ponernulos(txtcp.Text))
cmd.Parameters.Add("@p7", txtMunicipio.Text)
cmd.Parameters.Add("@p8", ponernulos(txttelefono1.Text))
cmd.Parameters.Add("@p9", ponernulos(txttelefono2.Text))
cmd.Parameters.Add("@p10", txtfechanac.Text)
cmd.Parameters.Add("@p11", txtespecialidad.Text)
cmd.Parameters.Add("@p12", txtdescripcion.Text)
cmd.Parameters.Add("@p13", txtprovincia.Text)
try
N=cmd.ExecuteNonQuery()
cn.close()
response.redirect("Inicio.aspx?detalle=" & txtnombre.text & _
" " & txtapellidos.text & ".Isertado")
catch nombre as Exception
label10.visible=true
label10.text="Error al insertar " & nombre.message
end try
cn.close()

ero para todas las bd seria algo mas o menos asi
Lo unico si haces con access oldbCOMMAND en vez de sqlcommand
El dataset es para hacer lecturas y podrias modificar algun registro de lso que has leido.

Pa cualquier cosa...
  #3 (permalink)  
Antiguo 13/04/2005, 02:09
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Hola, yo lo tenía d esa forma hecho pero el problema viene cuándo kiero insertar
campos nulos que el usuario no puede registrarse. Solo me deja si el usuario rellena
todos los datos. Según tu código la función q pones como "ponernulos", qué hace?
hace esto q digo?, gracias.
  #4 (permalink)  
Antiguo 13/04/2005, 02:50
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
Si tengo una funcion q controla o evita esto

Para los campos que no son oblogatorios,tengo una funcion que si son nulos los convierte a integer ya que esto pasa con los numeros,q da error,te la muestro;

para mostrar datos hago lo contrario por q tb da error si kieres meter un nulo a un texbox...


Private Function quitarnulos(ByVal o As Object) As String
If IsDBNull(o) Then
Return ""
Else
Return CType(o, String)
End If
End FunctioN

Private Function ponernulos(ByVal o As String) As Object
If o = "" Then
Return System.Convert.DBNull
Else
Return CType(o, Integer)
End If
End Function
  #5 (permalink)  
Antiguo 13/04/2005, 08:52
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Gracias Neivan, lo probaré.
  #6 (permalink)  
Antiguo 14/04/2005, 03:21
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Al final hice las tablas y los procedimientos en sql server en vez d cn Access y ya no tuve ningún problema para insertar campos nulos.

Saludos.
  #7 (permalink)  
Antiguo 14/04/2005, 03:51
Avatar de neivan  
Fecha de Ingreso: febrero-2005
Mensajes: 539
Antigüedad: 19 años, 3 meses
Puntos: 1
De todas formas deberas controlar por ejemplo si coges los valores de un dataset y te viene en algun campo valor nulo y se lo asignas a un textbox.y al reves yo tb utilizo sqlserver, comprueba haber si a los numericos si no pones nada (nulo) en un textbox te da error al insertar q a mi por lo menos me daba hasta que le puse la funcion.los nchar,las fechas no dan problemas.
  #8 (permalink)  
Antiguo 14/04/2005, 05:20
 
Fecha de Ingreso: abril-2005
Mensajes: 163
Antigüedad: 19 años
Puntos: 0
Pues kizás sea eso, q los campos d esa tabla q no kería q fueran obligatorios son string. No obstante probaré a ponerlos enteros a ver q pasa.

Gracias.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:02.