HQL挿入ステートメントを実行して、エンティティにマップしたテーブルにいくつかのパラメーターを挿入しようとしています。
これが私が現在取り組んでいることです(これは例外をスローします):
Insert Into Entity1
(ForeignKey1, ForeignKey2, Date1, Date2)
SELECT this_.ForeignKey1,
cast(:param1 as int) as ForeignKeyValue2,
cast(:param2 as DateTime) as DateValue1,
cast(:param3 as DateTime) as DateValue2
FROM OtherEntity this_
WHERE ...
2つの日付フィールドを省略した場合、挿入は機能するので、私は近くにいることがわかります。自分の日付を日付として表示するためにnhibernateを取得する方法を理解する必要があります。
例外:
insertion type [NHibernate.Type.Int32Type] and selection type
[NHibernate.Dialect.Function.CastFunction+LazyType] at position 1 are not compatible
[Insert Into Entity1
(ForeignKey1, ForeignKey2, Date1, Date2)
SELECT this_.ForeignKey1,
cast(:param1 as int) as ForeignKeyValue2,
cast(:param2 as DateTime) as DateValue1,
cast(:param3 as DateTime) as DateValue2
FROM OtherEntity this_
WHERE ...
誰かがこの種のことをした経験があるなら、遠慮なく助けてください。また、DateTimesでHQLキャストを使用する方法を知っている場合も役立ちます。DBMSはMSSQL2008です。