Ver Mensaje Individual
  #13 (permalink)  
Antiguo 15/06/2011, 17:47
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 5 meses
Puntos: 2658
Respuesta: Insertar Fecha desde c# a mysql

Vamos a lo simple: El mejor modo de manejar el problema de la transferencia de datos a una consulta es usar parámetros y dejar que los problemas de conversiones los resuelva el conector, que tiene sus propios métodos.
Código C#.Net:
Ver original
  1. string oSQL;
  2. oSQL= "INSERT INTO proyectos VALUES (NULL,@vNombre , @vIdAsociado, @vIdServicos, @vFeInicio, @vFeEntrega, @vFeliberacion, @vTotal, @vPagos, @vPropuesta, @vConvenio, @vCronograma)";
  3. MySqlCommand comando = new MySqlCommand(insert, conexion);
  4. comando.Parameters.AddWithValue("@vNombre ", varNombre).Direction = Direction.Input;
  5. comando.Parameters.AddWithValue("@vIdAsociado", varIdAsociado).Direction = Direction.Input;
  6. comando.Parameters.AddWithValue("@vIdServicos", varIdServicos).= Direction.Input;
  7. comando.Parameters.AddWithValue("@vFeInicio", varFeInicio).Direction = Direction.Input;
  8. comando.Parameters.AddWithValue("@vFeEntrega", varFeEntrega).Direction = Direction.Input;
  9. comando.Parameters.AddWithValue("@vFeliberacion", varFeliberacion).Direction = Direction.Input;
  10. comando.Parameters.AddWithValue("@vTotal", varTotal).Direction = Direction.Input;
  11. comando.Parameters.AddWithValue("@vPagos", varPagos).Direction = Direction.Input;
  12. comando.Parameters.AddWithValue("@vPropuesta", varPropuesta).Direction = Direction.Input;
  13. comando.Parameters.AddWithValue("@vConvenio", varConvenio).Direction = Direction.Input;
  14. comando.Parameters.AddWithValue("@vCronograma", varCronograma).Direction = Direction.Input;
  15. comando.ExecuteNonQuery();

Si hay algún error de sintaxis es porque habitualmente trabajo con VB.Net, y muy poco con C#.Net.

Condiciones necesarias:
1) Todas las variables deben ser del tipo preciso: Los valores monetarios deben ser Float, los de fecha Date, Los de fecha y hora DateTime, los de cadena String, los enteros Integer, etc.
2) No debe faltar ninguna variable y parámetro.
3) Los valores constantes se deben colocar dentro de la cadena del SQL.
4) NULL no se debe insertar entre apóstrofos. No es una cadena ni un valor, NULL es un estado, un puntero a la nada, y como tal no lleva comillas ni apóstrofes.

Todo este tipo de cosas se pueden consultar en el Manual de Referencia de MySQL::20.2.4.1.4. Working with Parameters.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 15/06/2011 a las 17:53