デルフィ:Paradox DB フィールド名の問題 (フィールド名にスペースが含まれている)

StackOverflow https://stackoverflow.com/questions/116163

  •  02-07-2019
  •  | 
  •  

質問

単一のクエリを実行する必要があるレガシー システムの Paradox テーブルがあります。フィールド名にはスペースが含まれています。つまり、「ストリート1」。Delphi で「Street 1」フィールドのみに対してクエリを作成しようとすると、「キーワードの無効な使用」というエラーが発生します。トークン:1、行番号:1

Delphi V7 - オブジェクト Pascal、標準 Tquery オブジェクト名 query1。

役に立ちましたか?

解決

クエリ内のテーブル名を文字列の前に付ける必要があります。

例えば:フィールド名は「Street 1」、テーブルは「customers」という名前で、選択は次のとおりです。

SELECT customers."Street 1" FROM customers WHERE ...

他のヒント

この場合、通常はフィールド名を引用符で囲む必要があります。例えば:

select * from t1 where "street 1" = 'test';

これを Paradox 7 テーブルで試してみたところ、うまくいきました。それでも解決しない場合は、使用しようとしているクエリを投稿していただけますか?その情報を教えていただけると助かります。

必要なのは、顧客テーブルに保持されている住所詳細からの番地情報だけです。SELECT * FROM Customers を実行すると正常に動作しますが、これは非常に大きなテーブルであり、多数の結果が返されます。顧客から SELECT "Street 1" を実行すると、返されるすべてのレコードの出力は "Street 1" になります。実際のデータは返されません。それは「」の使用と関係があるはずです。

ご協力いただきありがとうございます

ジョー

": の代わりに [ と ] を使用する必要があると思います。

SELECT customers.[Street 1] FROM customers WHERE ...
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top