2010-12-14 37 views
0

我有三个表(在MS Access数据库文件2000 * .mdb)中帮助德尔福7,ADO,&MS Access SQL语句

知识
ID
问题
答案

Knowledge_Keywords
ID
knowledgeid
keywordsid

关键词
ID
关键字

需要把所有的关键字知识

从关键字KW的KKW.keywordid = KW.id选择不同的关键字
加入knowledge_keywords KKW
加入知识钾对ķ .ID = KKW.knowledgeid
凡k.id = 10

当然10的

是一个例子,我实际使用的参数有

其中k.id =:AKnowId';

和在代码

qry.Parameters.ParamByName( 'AKnowId')填充在值:= AKnowledgeId;

无论如何,我认为SQL是qrong,任何帮助将不胜感激

+0

在delphi中测试,它在我的尝试崩溃,除非它到达查询的打开。在MS Access中测试它,我在From子句中出错。添加括号并在MS ACCESS中重新测试它,我在连接操作中出现语法错误。 – IElite 2010-12-14 19:12:18

回答

1

解决了!

从选择不同的关键字
(关键字KW
内加入上KKW.keywordid = KW.id knowledge_keywords KKW)
内加入知识K于K.id = KKW.knowledgeid
凡k.id = 10

+0

我想MS ACCESS尤其是关于使用括号,我想我需要内部连接经文普通ol连接 IElite 2010-12-14 19:35:08

1

获取SQL正常访问本身(进行查询,试试你的SQL,看看它是否返回任何东西)。那么担心德尔福。

+0

是的,谢谢你,正如我在我上面的评论中所说的那样,我确实试图让它在MS ACCESS中工作,但也失败了。 – IElite 2010-12-14 19:32:27

+1

您在Access中失败?你使用QBE来编写SQL吗?如果不是,为什么不呢?它保证与Access兼容的SQL,所以它是一个很好的方式来使它工作。它可以节省大量的打字量。 – 2010-12-19 02:11:30