Re: Mysql + Datetime
jonatan anauati <[email protected]>
| Newsgroups | gmane.comp.gnome.mono.hispano |
|---|---|
| Message-ID | <1215272425.14740.12.camel@dino-thunder> |
Buenas, te comento que según lo que te entiendo es que solo quieres
formatear al fecha.
En primer lugar creo que mysql te retorna sus valores datetime en su
propio tipo:
MySql.Data.Types.MySqlDateTime
Entonces lo que tienes que hacer es convertir este a un DateTime, puedes
hacerlo con el método GetDateTime ().
Luego, entonces los objetos instancias de DateTime, tienen una variacion
del ToString (), el cual recive una cadena de formato: ToString ("cadena
de formato"). En dicha cadena pones el formato con que quieras que se
convierta tu fecha.
Bueno, entonces tu codigo quedaría algo así:
DateTime temp = r.GetValue(1).GetString();
//entonces lo convertís a string:
datosCorregir[1] = temp.ToString ("%yyyy-%mm-%dd %HH:%mm:%ss")
creo que esto es lo que necesitas, luego vos mismo le agregás las validaciones
que creas son necesarias.
Un tema importante es que dicha "cadena de formato" puede contener cualquier
cosa dentro, solo hay que ver el "%" le dice al método que lo que viene son
caracteres especiales!, por ejemplo:
datosCorregir[1] = temp.ToString ("%HH:%mm:%ss")
// retornaría por ejemplo '17:23:00'
datosCorregir[1] = temp.ToString ("fecha actual: yyyy-%mm-%dd")
// retornaría por ejemplo 'fecha actual: 2008-07-05'
solo te retornaría la hora. Algo importante es que al poner la 'H' en
mayuscula, le dice al método que te traiga la hora en formato 24 hs.
un saludo, y espero que te sirva
> Intenta convirtiendolo a DateTime y de ahi manipularlo con los metodos
> tiene esta clase (seguro hay alguna que debe hacer lo que quieres).
>
> Saludos.
>
> 2008/7/4 Martin Ibarra <[email protected]>:
> Saludos Monos.
>
> Que tal Gente, actualmente me encuentro dearollando algo en C#
> con mysql, aqui tengo el siguietne problemita
> cuando hago un select a una tabla que tiene un campo datetime
> este me hace el select de la forma 2008-05-04 05:44:33 pm ,
> cuando en la tabla originalmente esta 2008-05-04 17:44:33 y
> esto me esta causando un problema al momento de obtener ese
> campo para poder hacer una operacion ya que no es lo mismo
> 05:44:33 que 17:44:33
>
> lo que hago es un TIMEDIFF(campo1, campo2)
>
> para poder obtener las horas, minutos, pero en codigo
>
> string[] datosCorregir;
> string sql = "SELECT corregir_pk,fecha_actual FROM
> CORREGIR WHERE descripcion = ?d";
>
> c = new MySqlConnection(MyConString);
> datosCorregir = new string[2];
>
> try
> {
> c.Open();
> cmd = new MySqlCommand(sql, c);
> cmd.Parameters.AddWithValue("?d", nombre);
> r = cmd.ExecuteReader();
>
> if (r.Read())
> {
> datosCorregir[0] =
> r.GetValue(0).ToString() != "" ? r.GetValue(0).ToString() : "
> ";
> datosCorregir[1] =
> r.GetValue(1).ToString() != "" ? r.GetValue(1).ToString() : "
> ";
> }
> }
>
> Aqui el datosCorregir[1] , despues de hacer el select en lugar
> de traerme en formato de 24 horas me lo trae en formato de 12
> agregandole p.m. 05:44:52 pm y yo lo necesito 17:44:52, alguna
> sugerencia ?
>
> Saludos.
>
>
> _______________________________________________
> Mono-hispano mailing list
> [email protected]
> https://listas.hispalinux.es/mailman/listinfo/mono-hispano
>
>
>
> --
> Jair Cazarin Villanueva
> http://jaircazarin.blogspot.com
> _______________________________________________
> Mono-hispano mailing list
> [email protected]
> https://listas.hispalinux.es/mailman/listinfo/mono-hispano
_______________________________________________
Mono-hispano mailing list
[email protected]
https://listas.hispalinux.es/mailman/listinfo/mono-hispano
smime.p7s
(application/x-pkcs7-signature, 3.4 KB) - not displayed