エンティティにマップしたテーブルにいくつかのパラメータを挿入するためにHQLのinsert文を実行しようとしています。ここで日付型の名前付きパラメータを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 ...
は助けること自由に感じなさい。また、あなたがHQLを使用してDateTimesにキャストする方法も知っていれば助かります。 DBMSはMS SQL 2008です。:
なぜSQLキャストですか? NHコールから適切なパラメータタイプを送信するだけではどうですか? –
パラメータを設定するコードを確認できますか? – Rippo