On Sun, Feb 18, 2018 at 10:02 PM, Olivier Leprêtre <o.lepre...@gmail.com> wrote:
> Hi, > > > > I have an sqlite database with wrong information in a timestamp field. > Using > System.Data.Sqlite, I want to get this information as a string inside a > very > simple loop. > > > > while (i < reader.FieldCount) { > > txt = reader[i].ToString(); // or reader.GetString(i) or > Convert.ToString(reader.GetValue(i)) > > Should be able to get the value from the reader without any conversions with dataReader[n] .... odr = ObjectDataReader... int ord = odr.GetOrdinal( PrimaryKey[i].ColumnName ); object o = odr[ord]; // GetSQLValue( Type t, Object o ) .... if( t == typeof( DateTime ) ) return MakeDate( connection, Convert.ToDateTime( o ) ).ToString(); public static long MakeDate( DsnConnection dsn, DateTime dt ) { // should check dsn for beavior NULL dsn being internal datatable seelctable value return ( dt.Year * 10000000000 + dt.Month * 100000000 + dt.Day * 1000000 + dt.Hour * 10000 + dt.Minute * 100 + dt.Second ); } > i++; > > } > > > > Problem is that if this works for all other fields (integer, varchar...) it > does not work for timestamp. Regardless reader function used, I get a > System.Format Exception Invalid DateTime when reading this field. > > > > How can I avoid this internal cast and just get this information as a text > string, no matter its inside format ? > > > > Thanks, > > > > Olivier > > > > --- > L'absence de virus dans ce courrier électronique a été vérifiée par le > logiciel antivirus Avast. > https://www.avast.com/antivirus > _______________________________________________ > sqlite-users mailing list > sqlite-users@mailinglists.sqlite.org > http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users > _______________________________________________ sqlite-users mailing list sqlite-users@mailinglists.sqlite.org http://mailinglists.sqlite.org/cgi-bin/mailman/listinfo/sqlite-users