2010-12-14 8 views
0

私は(MS Accessのデータベース2000ファイル*の.MDBで)3つのテーブルヘルプ

知識
ID
質問
答え

Knowledge_Keywordsを持っています
ID

keywordsid

をknowledgeidキーワード
ID
キーワード

は知識

ためのすべてのキーワードを取得する必要がK上の知識Kに参加KKW.keywordid = KW.id
にknowledge_keywords KKWに参加キーワードKWから
を明確なキーワードを選択します.ID = KKW.knowledgeidコース10の

が例であるk.id =、iが実際に存在パラメータ

を使用

ここで、k.id =:AKnowId ';

qry.Parameters.ParamByName( 'AKnowId')コードでそれを記入値:= AKnowledgeId。とにかく

、私は(それが何を返すかどうかを確認し、あなたのSQLを試してみてください、クエリを作る)SQLは、任意のヘルプは大幅に

+0

デルファイでのテストでは、クエリのOpenに達したとき以外は試してもクラッシュします。それをMS Accessでテストすると、From句にエラーが表示されます。かっこを追加してMS ACCESSで再テストすると、結合操作で構文エラーが発生します。 – IElite

答えて

1

解決済み!

から異なるキーワード
を選択
内側 がK.id知識Kに参加= KKW.knowledgeid
場合k.id = 10(キーワードKW
内側はKKW.keywordid = KW.idにknowledge_keywords KKWに参加します)

+0

私は特に括弧を使うことについてのMS ACCESSを推測しています。私は内側の結合節と普通の結合節が必要だと思います IElite

1

をいただければ幸いSQLは、アクセス自体の中で正常に動作しなさい、qrongていると思います。それでは、Delphiについて心配してください。

+0

はい、ありがとう、上記の私のコメントで述べたように、私はMS ACCESSで動作するようにしようとしましたが、失敗しました。 – IElite

+1

あなたはAccessで失敗しましたか?あなたはQBEを使ってSQLを書いていましたか?そうでない場合は、どうしてですか?これはAccessと互換性のあるSQLを保証するので、動作させるには最適な方法です。そして、入力のボート負荷を節約します。 –