nhibernate を使用してレコードを挿入しようとしています。これが私が得ているエラーです(または、テストコンソールアプリによって表示されているメッセージです。エラーヘッダーの2番目の部分は、キャッチされた例外です):
NHibernate.GuitarStore assembly initialized.
NHibernate: INSERT INTO INVENTORY (TYPEID, BUILDER, MODEL, QOH, COST, PRICE,RECEIVED)
VALUES (@p0, @p1, @p2, @p3, @p4, @p5, @p6); select SCOPE_IDENTITY();@p0 = 1 [Type:Int32 (0)], @p1 = 'Test Builder 2' [Type: String (4000)], @p2 = 'Test Model 2' [Type: String (4000)], @p3 = 9 [Type: Int32 (0)], @p4 = 2000 [Type: Decimal (0)], @p5 = 200 [Type: Decimal (0)], @p6 = 7/19/2013 7:35:51 PM [Type: DateTime (0)]
***** ERROR *****
could not insert: [NHibernate.GuitarStore.Common.Inventory][SQL: INSERT INTO INVENTORY (TYPEID, BUILDER, MODEL, QOH, COST, PRICE, RECEIVED) VALUES (?, ?, ?, ?,?, ?, ?); select COPE_IDENTITY()] - InnerExcepetion: Operand type clash: int is incompatible with image
生成された挿入 SQL を見ると、値がそれぞれの型と一致しているように思えます。エラーが示すように、どの int がイメージと互換性がないかわかりません。
PS: 私は自分のデータベースにイメージ型の列を持っていません
編集:在庫のスキーマは次のとおりです。
CREATE TABLE [dbo].[Inventory](builder] [varchar](50) NULL, [model] [varchar](50) NULL,
[qoh] [image] NOT NULL,
[cost] [decimal](18, 0) NOT NULL,
[price] [decimal](18, 0) NOT NULL,
[received] [datetime] NULL,
[id] [int] IDENTITY(1,1) NOT NULL,
[typeid] [int] NOT NULL, CONSTRAINT [PK_Inventory_1] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY] TEXTIMAGE_ON PRIMARY]