Ho una tabella che contiene alcune colonne associate a una griglia.Come scrivere due query di aggiornamento in una singola stored procedure in SQL Server 2008
In tale schermata, ho un'opzione di modifica per aggiornare le colonne. In tale situazione ho bisogno di scrivere due stored procedure di aggiornamento che significa selezionare tutte le colonne AudiotoName
, selezionare un'altra colonna tutte le colonne sono aggiornate per generare una query di aggiornamento ma quando seleziono la tabella in cui è presente la colonna AudiotoName
che modifica solo per selezionare quella colonna solleverà la seconda stored procedure di aggiornamento. Ho provato ma non funziona correttamente nessuno può aiutarmi.
Il mio codice:
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
Qualcuno può darmi una mano?
grazie mille –