Los foros del Guille

MKN Reservas (Maro - Kayak Nerja)


Kayak Maro - Rutas y alquiler de kayak y tabla

Si no encuentras respuesta, puedes buscar en el sitio del Guille

Google
 
Selecciona el foro y pulsa en mostrar:     Mostrar 
De tu inter�s (algunos de los avisos publicados)

01/feb./2019

Los moderadores, MVP y administradores podrán seguir editando, respondiendo o creando nuevos mensajes

Con idea de que puedan ayudar a responder e ir cerrando mensajes ;-)

  Foro: .NET General Cantidad:  Desde:   Hasta:    Aplicar   Responder 
Respuestas a: 55377 - Mysql grabar datos
IDAsuntoFechaNick 
55377 Mysql grabar datos09/06/11 00:45julianjg   
Buenas noches, estoy trabajando en páginas web, utilizó Mysql, me conecta a la base de datos sin problemas, quisiera saber cómo puedo guardar datos que tengo en unos texbox, tengo el siguiente código:

Dim adapter As SqlDataAdapter = New SqlDataAdapter
Dim connStr As String = "DRIVER={MySQL ODBC 3.51 Driver};SERVER=xx.xx.xx.xx;DATABASE=yyyyyy;UID=zzzzz;PWD=wwwww; OPTION=" & 1 + 2 + 8 + 32 + 2048 + 16384
Dim conexion As OdbcConnection = New OdbcConnection(connStr)
Dim sql As OdbcDataAdapter = New OdbcDataAdapter("SELECT * FROM Vehiculos WHERE Placa = '" + Placa.Text + "'", conexion)
Dim ds As DataSet = New DataSet
Dim Nvehiculo As DataRow

sql.Fill(ds, "Vehiculos")
Nvehiculo = ds.Tables("Vehiculos").NewRow
asignarDatos(Nvehiculo)
ds.Tables("Vehiculos").Rows.Add(Nvehiculo)
sql.Update(ds, "Vehiculos")

ds.AcceptChanges()
Me saca un error en ds.Update, como puedo corregirlo para que me funcione, agradecería cualquier colaboración.
IDAsuntoFechaNick 
55390 Re: Mysql grabar datos (Resp: 55377)11/06/11 12:58bohemio   
Hola a todos de nuevo, a ver si te vale esto. En cualquier caso, tienes puesto
Dim adapter as SqlDataAdapter=New SqlDataAdapter

Bueno pues eso, tal y como nos has eneseniado el codigo no funciona por que estas conectandote mas adelante con el conector ODBC, asi que esa sentencia te sobra. Por otro lado si te conectas a una base de datos Mysql, esa misma sentencia deberia ser

Dim adapter as MysqlDataAdapter=New MysqlDataAdapter

Fijate en la diferencia. Aunque tampoco te funcionaria en este caso pero fijate que se escribe distinto.

Ahora al tema

Creas la conexion bien,llenas el dataset bien,creas la nueva fila bien. Pero... que hace asignarDatos (Eso no nos lo has puesto)

A ver si esto te funciona. La conexion y todo es igual que lo has hecho tu

Creamos una instancia de la tabla
Dim tabla as DataTable=ds.Tables("vehiculos")
'Creamos una nueva fila y se la añadimos a la instancia que acabamos de crear
Dim Nvehiculo as DataRow=tabla.NewRow()
'Asignamos los valores para la nueva fila
Nvehiculo("id")=Placa.Text
'Y le metemos los datos al dataset
tabla.Rows.Add(Nvehiculo)
'Ahora tenemos la nueva fila en el dataset pero no en la base
     de datos. Para meterla en la base de datos hay que llenar el dataset con la nueva fila en
     la base de datos

A partir de aqui, que es cuando hay que actualizar los datos de la tabla se puede hacer de varias formas, te pongo esta que es la mas facil a ver si te funciona. Aunque no la comprendas bien a ver si te funciona.

Dim comando as OdbcCommandBuilder (sql)
sql.Update (ds,"vehiculos")

Pues eso es todo. Espero que te valga de algo, pero deberias intentar leer un poquito mas en este tema ya que es importante para hacer lo que estas haciendo. En esta misma pagina en la zona manuales hay varias cosas que deberias leer.

En cualquier caso acuerdate de entrar en el anterior hilo que planteaste y da al simbolo de tema resuelto para que se pueda cerrar el hilo y en este, si es el mismo caso, acuerdate de cerrar el hilo dando al simbolito correspondiente.

Pues ha sido un placer haberte sido de utilidad ( si es que lo he sido ) y sino... pues pedir disculpas al foro y a ti por haber metido la pata. Los entendidos del foro me gustaria que corrigiesen cualquier error que haya podido cometer para aprender todos un poco mas.

Hasta prontisimo

PD- A cuidarseme todo dios ( si es que existe, que esa es otra)


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.

 
(c) Guillermo 'guille' Som, 2005-2026  - foros.elGuille v1.0.6.3 (01/Jun/2021 12:45 GMT +2)  - (ASP.NET v4.0.30319.42000)
 
La hora GMT del servidor es: 12/06/2026 07:50:25 GMT