2
私はTimeSpan
フィールドをMySQLデータベースにNHibernateで保存しています。流暢なマッピングは次のようになります。nhibernateはTimeSpanをMysqlにどのように格納しますか?
Map(x => x.StartTime);
Map(x => x.EndTime);
特別な型は設定されていません。
DBでは、13:00と14:00にそれぞれDBの468000000000と504000000000が表示されます。フィールドタイプはBIGINTです(int64)
ストアドプロシージャでは、2つのタイムスタンプ間の時間差を計算する必要があります。彼らは
は、例えば最初の番号を取ることはありません除き
番号が経過しuSecondsの数を表しているように見える...
:4680億または4.68e + 11
13時間です4.68e + 10マイクロ秒...
これは本当に1/100thsナノ秒の経過時間を格納しているのですか?
この動作は、マッピングで指定された 'type'に依存することに注意してください。 .Netの 'TimeSpan'のデフォルト値はdb型' Int64'になります。しかし、あなたのデータベースがそれをサポートしているならば、それを 'Time'に変更することができます。 [(最新ではない)リスト](http://nhibernate.info/doc/nhibernate-reference/mapping.html#mapping-types-basictypes)を参照するか、[NHibernate code](https:// github.com/nhibernate/nhibernate-core/blob/master/src/NHibernate/NHibernateUtil.cs)。 –