-1

@AE_LedgerACストア プロシージャのパラメータに 6 文字しか含まれていないことを検出するにはどうすればよいですか? 6 文字しか含まれていない場合は、このテーブルに含まれる詳細を前に追加しますBIN.BranchId

ALTER PROCEDURE [dbo].[AccountEntries]

    @AE_LedgerAC varchar(21)=null,
    @AE_Transaction_Ref varchar(50)=null,
    @AE_Detail nvarchar(50)=null,
AS
    DECLARE @NEW_LedgerAC varchar(21) = null

    IF(LEN(@AE_LedgerAC) = 6)
    BEGIN
        @NEW_LedgerAC = SELECT TOP 1 BIN.BranchId FROM BIN + @AE_LedgerAC
    ELSE
        @NEW_LedgerAC = @AE_LedgerAC

    INSERT INTO [AccountEntries](LedgerAC, Transaction_Ref, Detail)
    VALUES (@AE_LedgerAC, @AE_Transaction_Ref, @AE_Detail)  
4

2 に答える 2

2

LEN ( string_expression ) を使用

IF(LEN(@AE_LedgerAC) = 6)
BEGIN

...
END
于 2013-02-22T09:21:07.227 に答える
1

これが MSSQL であると仮定して、Microsoft の MSDN から次のリンクを確認してください。

レン

IF/ELSE

無効です

SET @ローカル変数

于 2013-02-22T09:27:17.663 に答える