0

JDBC接続を介してこの単純なクエリを実行しようとしています:

select _fk_DeptBillTo from WorkOrder

そして、私はこのエラーを取り戻しています:

 09:31:39  [SELECT - 0 row(s), 0.000 secs]  [Error Code: -201, SQL State: HY000]  [DataDirect][SequeLink JDBC Driver][ODBC Socket][DataDirect][ODBC FileMaker driver][FileMaker]Parse Error in SQL
... 1 statement(s) executed, 0 row(s) affected, exec/fetch time: 0.000/0.000 sec  [0 successful, 0 warnings, 1 errors]

このフィールドが存在することを確認しました。スペルと大文字と小文字を約 20 回チェックしました :-(。また、_fk_DeptBillTo を別のフィールドに置き換えて、このクエリを正常に実行しました。

よくわかりませんが、これまでの一般的なパターンは、アンダースコアで始まるフィールドを使用するとこのエラーが発生することです。

MySQLで選択する方法のように、フィールド名を引用する方法はありますsomefieldか...? もしそうなら、それはここで役立ちますか?

4

1 に答える 1

2

あなたは自分の質問に答えたと思います...先頭のアンダースコアを避けるか、フィールド名を引用してください。二重引用符 " または一重引用符 ' を試して、どちらが機能するかを確認してください。

フィールドに「テーブル」という名前を付けた人に同様の問題が発生しました。これは予約語であるため、常に失敗していました。

于 2011-03-23T13:50:05.883 に答える