2016-06-30 49 views
-2

このエラーが発生し、処理ができません。Re RIGHT関数に無効な長さパラメータが渡されました

このエラーに関するお考えはありますか?

CASE WHEN mm.[Moodle Courses Category] + '_' +ISNULL(RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11),'V1') like '%/%' THEN 
     mm.[Moodle Courses Category] + '_' +ISNULL(RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11),'V1') 
     ELSE 
     mm.[Moodle Courses Category] + '_' +ISNULL(RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11),'V1') END AS GROUP_ID 

エラー:メッセージ536、レベル16、状態2、行1 RIGHT関数に渡された無効な長さのパラメータ。

+0

はなぜあなたが進行することはできませんされています

は、だから、ttg.TTGP_Group_Codeの長さが11未満などであるアドレスに条件を持っている必要がありますか?エラーメッセージの言葉を理解していますか?あなたは "パラメータ"が何であるか知っていますか?どのような "機能"ですか? – Blorgbeard

+0

'LEN(ttg.TTGP_Group_Code)-11'は負のようです。これはあなたのエラーです。 –

+0

怠け者にしないでください。デバッグとトラブルシューティングを学びます。文字通り、「無効な長さパラメータがRIGHT関数に渡されました」というエラーをコピーできます。 Googleにあなたの答えを得る。 – dfundako

答えて

0

あなたが持っている:

RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11) 

エラーがフィールド「ttg.TTGP_Group_Code」のためにttg.TTGP_Group_Codeの長さが11個の未満の文字である少なくとも1つのレコードがあることを示します。負数の右を取ることはできません。したがって、フィールドの長さが10で、11を引いた場合、-1が得られます。

CASE 

    WHEN LEN(ttg.TTGP_Group_Code) <= 11 AND mm.[Moodle Courses Category] + '_' + ISNULL(tg.TTGP_Group_Cod,'V1') like '%/%' THEN 
      THEN mm.[Moodle Courses Category] + '_' + ISNULL(tg.TTGP_Group_Cod,'V1') 


    WHEN mm.[Moodle Courses Category] + '_' +ISNULL(RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11),'V1') like '%/%' THEN 
     mm.[Moodle Courses Category] + '_' +ISNULL(RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11),'V1') 
    ELSE 
     mm.[Moodle Courses Category] + '_' +ISNULL(RIGHT(ttg.TTGP_Group_Code, LEN(ttg.TTGP_Group_Code)-11),'V1') 
END AS GROUP_ID 
関連する問題