테이블을 업데이트해야하는 저장 프로 시저가 있습니다. 직접 실행하면 "Command (s) completed successfully."가 나오지만 C#에서 호출하면 테이블이 변경되지 않습니다. 무슨 일 이니?C에서 호출 할 때 저장 프로 시저가 테이블을 업데이트하지 않음
set ANSI_NULLS ON
set QUOTED_IDENTIFIER ON
go
-- =============================================
-- Author: Mohamamd Ibrahim Tasal
-- Create date: 29-Octobar-2009
-- Description: This procedure is releasing Numbers....
-- =============================================
ALTER PROCEDURE [dbo].[Release_MassMSISDN]
(
@Quantity int,
@_SCP int
)
AS
BEGIN
SET NOCOUNT ON;
set @Quantity=1;
set @_SCP=798000070;
DECLARE @_Filter nvarchar(1000)
DECLARE @sql nvarchar(4000)
IF @_SCP = 2
SET @_Filter = 'MSISDN LIKE ''799%'' OR MSISDN LIKE ''798%'''
IF @_SCP = 1
SET @_Filter = 'MSISDN LIKE ''797%'' OR MSISDN LIKE ''796%'' OR MSISDN LIKE ''7950%'' OR MSISDN LIKE ''7951%'' OR MSISDN LIKE ''7952'' OR MSISDN LIKE ''7953%'' OR MSISDN LIKE ''7954%'''
IF @_SCP = 3
SET @_Filter = 'MSISDN LIKE ''794%'''
IF @_SCP = 4
SET @_Filter = 'MSISDN LIKE ''793%''or MSISDN LIKE ''7955%'' OR MSISDN LIKE ''7956%'' OR MSISDN LIKE ''7957%'' or MSISDN LIKE ''7958%'' OR MSISDN LIKE ''7959%'''
UPDATE
MSISDN_Master
SET
IMSI_HLR=NULL,
IMSI_IN=NULL,
GoldNumber=0,
SERIAL=NULL,
FK_AllocationTypeID = NULL,
FK_ProfileTypeID = NULL,
FK_ModelTypeID = NULL,
FK_StatusID = NULL,
FK_BatchID = NULL,
Activation_Date = NULL,
Locked = 0,
ICBlocked = 0,
langcur = NULL,
Credit = NULL
WHERE msisdn in ('SELECT TOP '+ CAST(@quantity AS varchar(10)) + ' MSISDN,IMSI_HLR,IMSI_IN,Serial,FK_BatchID BatchID,FK_AllocationTypeID AllocationTypeID,FK_ProfileTypeID ProfileTypeID,FK_ModelTypeID ModelTypeID,Activation_Date FROM MSISDN_Master
where imsi_hlr not like ''412%'' and imsi_hlr not like ''GOL%'' and imsi_hlr is not null and imsi_in is not null AND ('+ @_Filter +') ORDER BY MSISDN')
END
천천히 숨을 내쉬고 다시 시도하십시오. 이번에는 명확한 질문이 있습니다. "이 붙여 넣은 코드는 왜 작동하지 않습니까?" 그 중 하나가 아닙니다. – Schwern
"porcedure", "doest", "becouse"및 실제 질문이나 설명이없는 SQL의 긴 덤프. 고마워, 제출자. – abelenky
C# 코드는 어떻게 생겼습니까? – jrcs3