ODBCを介してアクセスしているリモートDB2データベースがあります。次のようなクエリがある場合
SELECT t.foo, t.bar, t.problemcolumn
FROM problemtable t
WHERE t.bar < 60;
それは魅力のように機能するので、テーブルと列は明らかに存在します。
しかし、WHERE句で問題の列を指定すると
SELECT t.foo, t.bar, t.problemcolumn
FROM problemtable t
WHERE t.problemcolumn = 'x'
AND t.bar < 60;
エラーが発生します
Table "problemtable" does not exist.
これの理由は何でしょうか?スペルを再確認しました。where句にproblemcolumnを含めるだけで、問題をトリガーできます。