2016-05-21 8 views
0

の句は、私はMS Accessで2013MS AccessのUPDATE文

UPDATE tblTasks 
    SET tblTasks.IconFilePath = "C:\Images\john.smith.jpg" 
WHERE (((Replace([PersonResponsible]," ",""))="Smith,John") 
    AND ((Len([PersonResponsible]))>0)); 
を実行し、次のUPDATE文でエラーメッセージ「抽出条件式でのデータ型の不一致」を取得していますWHEREで機能を交換し使用した場合のデータ型不一致エラーを取得します。

を削除すると、WHERE句から関数呼び出しを置き換えると、文はエラーなく実行されます。

PersonResponsibleのデータ型はです。短いテキスト(255)です。私はCStrとNZのReplace呼び出しをラップしようとしましたが、まだデータ型の不一致エラーがあります。

ご迷惑をおかけして申し訳ございません。

UPDATE tblTasks 
    SET tblTasks.IconFilePath = "C:\Images\john.smith.jpg" 
WHERE (((Replace(Nz([PersonResponsible],"")," ",""))="Smith,John") 
    AND ((Len(Nz([PersonResponsible],"")))>0)); 

しかし、実際に、あなたはこれを簡素化することができます:

UPDATE tblTasks 
    SET tblTasks.IconFilePath = "C:\Images\john.smith.jpg" 
WHERE (((Replace(Nz([PersonResponsible],"")," ",""))="Smith,John")); 

句はdoesnのところ、余分な[PersonResponsible]ヌルは、にあなたのSQLを変更することができます場合は

はあなたに

+0

私たちの終わりに問題を再現する* John Smith *データラインが見えますか? – Parfait

+0

申し訳ありませんが、私はその質問に従っていません。 "スミス、ジョン"は、文字通りクエリに渡されているものです。私は何かを欠いているに違いない。あなたは "John Smithのデータライン"の要求について詳しく説明できますか? –

答えて

0

ありがとうございましたこの場合には、それ以上の特異性を追加しないでください。

+0

これは機能しました。ありがとうございました! –