sql >> Database >  >> RDS >> PostgreSQL

NHibernate Postgresql Datum Tijd naar Tijd Conversie

Ik heb het bedacht!

Blijkbaar heb ik het conversieblad gekoppeld is ofwel verkeerd of verouderd. Het blijkt dat een System.TimeSpan-object nodig is voor Npgsql om een ​​juiste conversie uit te voeren naar een Postgresql "time"-object. Het lijkt me vreemd dat ze zouden proberen iets dat een verschil tussen twee tijden vertegenwoordigt, om te zetten in wat wij beschouwen als HH:mm:ss, maar zo is het.

In plaats van het type van mijn RunTime-eigenschap te wijzigen van System.DateTime in System.TimeSpan, heb ik in plaats daarvan een aangepast IUserType gemaakt en NullSafeSet overschreven om eruit te zien

public override void NullSafeSet(IDbCommand cmd, object value, int index)
{
    var obj = (DateTime)value;

    ((IDbDataParameter) cmd.Parameters[index]).Value = new TimeSpan(0, obj.Hour, obj.Minute, obj.Second);
}


  1. Migreer MS Access naar PostgreSQL

  2. hoe gebruik je een string als formule voor wiskundige berekeningen in php?

  3. psycopg2:voeg meerdere rijen in met één query

  4. ORACLE/ASP.NET:ORA-2020 - Te veel databaselinks... wat veroorzaakt dit?