Foros del Web » Programando para Internet » ASPX (.net) »

Problemas MySql y .NET DbParameter

Estas en el tema de Problemas MySql y .NET DbParameter en el foro de ASPX (.net) en Foros del Web. Estoy intentando ejecutar una consulta de adcualización (UPDATE) desde ADO.NET sobre una base de datos MySql con conexión Odbc. Utilizo un un objeto DbCommand en ...
  #1 (permalink)  
Antiguo 30/11/2009, 06:38
 
Fecha de Ingreso: mayo-2006
Mensajes: 4
Antigüedad: 18 años
Puntos: 0
Problemas MySql y .NET DbParameter

Estoy intentando ejecutar una consulta de adcualización (UPDATE) desde ADO.NET sobre una base de datos MySql con conexión Odbc. Utilizo un un objeto DbCommand en el cual introduzco una conexión y una instrucción SQL.
La instrucción Sql contiene un parámetro y lo añado correctamente pero al ejecutarse no hace nada y no actúa sobre ninguna columna (si sustituyo el parámetro por un valor concreto en la cadena funciona)
Gracias
  #2 (permalink)  
Antiguo 30/11/2009, 11:13
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Problemas MySql y .NET DbParameter

Con ODBC cambia la forma de indicar los parámetros, te dejo este ejemplo:
Código vb.net:
Ver original
  1. Using cmd As New OdbcCommand("select productid, productname from products where productid=(?)", cn)
  2. cmd.Parameters.Add("@codigo", OdbcType.Int, 4).Value = variable_codigo
  3. End Using
Como te das cuenta para indicar el parámetro lo haces con un signo de interrogación entre paréntesis.

Cualquier duda me avisas

PD: Podrías usar el Connector para MySQL en lugar de ODBC http://dev.mysql.com/downloads/#connector-net
__________________
Eduardo Peredo
Wigoin
  #3 (permalink)  
Antiguo 01/12/2009, 04:07
 
Fecha de Ingreso: mayo-2006
Mensajes: 4
Antigüedad: 18 años
Puntos: 0
Respuesta: Problemas MySql y .NET DbParameter

Gracias, he podido resolver el tema.
Sólo indicar que si hay varios parámetros se pone en todos ellos (?) y despés se asignan según su posición.
Por ejemplo:

"UPDATE d_seccion SET titulo = (?), posicion = (?) WHERE codigo = (?)";

Después el primer (?) se debe corresponder con el primer parámetro en la colección Parameter; el segundo (?) con el segundo parámetro de la colección Parameter y así sucesivamente.

Utilizo el conector ODBC porque es el que me permite el site Web. ¿Tendría muchas ventajas si utilizo el propio de MySql?

MUCHIIIIIISSSSSIIIIIIMASSSSS GRACIAS
  #4 (permalink)  
Antiguo 02/12/2009, 15:05
Avatar de eperedo  
Fecha de Ingreso: septiembre-2009
Ubicación: Perú
Mensajes: 654
Antigüedad: 14 años, 7 meses
Puntos: 16
Respuesta: Problemas MySql y .NET DbParameter

Cita:
Después el primer (?) se debe corresponder con el primer parámetro en la colección Parameter; el segundo (?) con el segundo parámetro de la colección Parameter y así sucesivamente.
Exacto! (y)

Cita:
Utilizo el conector ODBC porque es el que me permite el site Web. ¿Tendría muchas ventajas si utilizo el propio de MySql?
Pruebas de rendimiento con ambos no las he hecho por lo que no puedo detallar con exactitud la rapidez de uno frente al otro.
Pero el código usando el connector de MySQL es similar a si estuvieras usando SqlServer, por lo que te ahorraría algunos dolores de cabeza, claro está en el caso de que tengas experiencia accediendo a BD de SQL Server.

Cita:
MUCHIIIIIISSSSSIIIIIIMASSSSS GRACIAS
De nada.
Saludos
__________________
Eduardo Peredo
Wigoin
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 22:42.