SQL Server Management Studioで結果が表示されても、モデルブラウザーの関数インポートから列情報を取得できません。私はStoredProcedureをModel BrowserのStoredProceduresセクションに追加しました。関数のインポートを追加するときに、GetColumnInformationを押しています。これは "選択されたストアドプロシージャが列を返しません"と表示されています。しかし、私は結果を見ることができるストアドプロシージャを実行しています。 私のプロジェクトはASP.NET MVC2です。私はADO.NETエンティティモデルを使用しています。ModelBrowserでFunctionImportを追加するときに列情報を取得できない
これは私が ON GO のSET QUOTED_IDENTIFIER ON のSET ANSI_NULLS GO
ALTER PROCEDURE [DBO]。[マイストアドプロシージャの名前GO
使用[MyDatabaseという名] を作成したストアドプロシージャですAS] @startDate日時、 @EndDate日時、 @accountIdのint、int型 @healthPlanId
BEGIN
SET NOCOUNT ON; DECLARE @variableId as int; 表#TempAuditEventを(CREATE [AuditEvent_Id] [INT] NULL NOT、 [TABLEID] [INT] NULL NOT、 [Original_record] [XML] NULL NOT、 [Current_record] [XML] NULL NOT、 [たAction] [INT] NULL NOT、 [OccuredOn] [日時] NULL NOT、 [TriggeredBy] VARCHAR NOT NULL、 【のisActive] [TINYINT] NULL NOT、 [DateTime_Added] [日時] NULL NOT、 [Added_By] VARCHAR NOT NULL、 [DateTime_Updated] [datetime] NULL、 [Updated_By] varchar NULL、 ); NULL
FOR DECLAREのvariable_cursorカーソルProductInfoのP から別個bao.ba_Object_idを選択baSelection BASにp.Product_Id = bas.ba_BLID bas.ba_variable_Id = bao.ba_Object_id 場合(bao.ba_Object_Type_Id = 4またはバオにbaObjectバオに参加する参加します。 ba_Object_Type_Id = 6またはbao.ba_Object_Type_Id = 22) およびp.AccountId = @accountIdおよびp.IsProduct = 1 およびbas.Health_Plan_ID = @healthPlanId; OPEN variable_cursor;
FETCH NEXT FROM variable_cursor INTO @variableId;
WHILE @@ FETCH_STATUS = 0
は でAuditEvent_Id( は( ae.DateTime_Added> = @たstartDateとAE AE vwProductChangesReport FROM ae.AuditEvent_IdをSELECTたAuditEvent FROM INSERT INTO #TempAuditEvent SELECT *をBEGIN .DateTime_Updated < @endDate
AND((ae.TableId = 12およびae.TableId < = 14)またはae.TableId = 9またはae.TableId = 40またはae.TableId = 50またはae.TableId = 64 OR ae .TableId = 65) AND(ae.strCurrent LIKE '%Variable_Id = "' + CAST(@variableId AS varchar(20))+ '"%' OR ae.strCurrent LIKE '%VariableId = "' + CAST(@variableId varchar(20))+ '"%' またはae.strCurrent LIKE '%BaObjectId = "' + CAST(@variableId varchar(20) )+ '"%' OR ae。'ObnId =% '% OR ae.strCurrent LIKE strCurrent LIKE '%ParentBaObjectId = "' + + CAST(VARCHAR(20)AS @variableId)"' "' + CAST(@variableId AS VARCHAR(20))+" ' %」 OR ae.strCurrent LIKE '%Benefit_Variable_Id = "' + CAST(@variableId AS VARCHAR(20))+" '%' ))
) がvariable_cursor FROM @variableId INTO次のフェッチ。 END CLOSE variable_cursor。 DEALLOCATE variable_cursor;
は#TempAuditEvent SELECT * FROM。 DROP TABLE #TempAuditEvent;
END