このスレッドを読んでいる人は、BDE SQL エンジンがクエリを処理できないという印象を受けるのではないかと心配しています。
select * from Journal where Journal."Where" = "RainPump"
その周りを不必要に迂回して時間を無駄にします。
実際、この構造はうまく機能します。"Where" を引用符で囲むと、BDE がそれをキーワードとして解釈するのを防ぎます。
Baldric の特定の状況で何が問題なのか、または彼がどのような順序で何を試みたのかはわかりません。彼は問題を *.db テーブルのクエリと説明していますが、彼の SQL エラーは、パススルー モードで発生するエラーのように見えます。または、送信用にコードを単純化して、エラーの真の原因を取り除いた可能性があります。
BDE v.5.2 (5.2.0.2) Paradox for Windows v. 7 (32b) Delphi 5.0 (5.62)
成功するステートメントのさまざまなバージョン:
select * from Journal D0 where D0."Where" = "RainPump"
select * from Journal where Journal."Where" = "RainPump"
select * from ":common:Journal" D0 where D0."Where" = "RainPump"
select * from ":common:Journal" where ":common:Journal"."Where" = "RainPump"
select * from :common:Journal where Journal."Where" = "RainPump"
select * from ":common:Journal" D0 where D0."GUMPIK" = 3
select * from ":common:Journal" where ":common:Journal"."GUMPIK" = 3
select * from :common:Journal where Journal."GUMPIK" = 3
正しく見えるが「無効なキーワードの使用」で失敗するバージョンのステートメント:
select * from ":common:Journal" where :common:Journal."Where" = "RainPump"
select * from :common:Journal where :common:Journal."Where" = "RainPump"
select * from ":common:Journal" where :common:Journal."GUMPIK" = 3
select * from :common:Journal where :common:Journal."GUMPIK" = 3
-アル。