5
グリッドビューにバインドされたいくつかの列を含むテーブルがあります。SQL Server 2008の単一ストアドプロシージャで2つの更新クエリを書き込む方法
グリッドビューでは、列を更新する編集オプションがあります。その状況で私は2つの更新ストアドプロシージャを書く必要があるすべての列を選択することを意味するAudiotoName
、別の列を選択するすべての列は1つの更新クエリを発生させるために更新されますが私はその列を選択する編集AudiotoName
列2番目の更新ストアドプロシージャが呼び出されます。私はしようとしたが、それは正常に働いていない誰も私を助けます。
マイコード:
ALTER PROCEDURE up_file
(@ModuleID int,
@SubjectID int,
@Physician varchar(500) = '',
@AuditoName varchar(300) = '',
@AuditoType varchar(50) = '',
@AudioPath varchar(2000) = '',
@BaseDocumentName varchar(500) = '',
@BaseDocumentPath varchar(2000) = '',
@Createddate datetime,
@CreatedBy varchar(200) = '')
AS
BEGIN
IF @AuditoName = 'true' //select AuditoName column only raise this update query
BEGIN
UPDATE SubjectItems
SET ModuleID = @ModuleID,
SubjectID = @SubjectID,
Physician = '@Physician',
AuditoName = '@AuditoName',
AuditoType = '@AuditoType',
AudioPath ='@AudioPath',
BaseDocumentName = '@BaseDocumentName',
BaseDocumentPath = '@BaseDocumentPath'
WHERE AuditoName = @AuditoName
END
BEGIN //normal fields select raise this update query
UPDATE SubjectItems
SET ModuleID = @ModuleID,
SubjectID = @SubjectID,
Physician = '@Physician',
AuditoName = '@AuditoName',
AuditoType = '@AuditoType',
AudioPath ='@AudioPath',
BaseDocumentName = '@BaseDocumentName',
BaseDocumentPath = '@BaseDocumentPath'
WHERE ModuleID = @ModuleID
END
END
誰も私を助けることはできますか?
ありがとう –