2012-04-08 10 views
5

すべてのデータを挿入するために使用したPrologデータベースファイル(test_inserts.p)があります。簡単なPROLOGの問題:Prologデータベースに対して複数のクエリをどのようにテストしますか?

私はデータベースから特定の情報を受け取るために書いたすべてのPrologクエリを持つPrologクエリファイル(test_queries.pl)もあります。

gprologを使用しているときに、実際にtest_queries.plクエリをtest_inserts.pデータベースファイルに対して使用する方法が不思議でしたか?私は両方を同時にロードする方法があると思っていました。実行したい各クエリーを再入力するのではなく、実行するクエリーを何らかの方法で指示することができます。

答えて

5

私はtest_queries.plinitialization/1 ISO指令を使用して、下部に表示される効果を得ました。

test_queries.pl

​​

test_inserts.pl

a(X,Y) :- append(X,Y,[1,2,3]). 

はその後--consult-file

gprolog --consult-file test_queries.pl 
GNU Prolog 1.4.0 
By Daniel Diaz 
Copyright (C) 1999-2011 Daniel Diaz 
compiling /home/carlo/test_queries.pl for byte code... 
/home/carlo/test_queries.pl compiled, 5 lines read - 659 bytes written, 28 ms 
compiling /home/carlo/test_inserts.pl for byte code... 
/home/carlo/test_inserts.pl compiled, 2 lines read - 379 bytes written, 30 ms 
[] [1,2,3] 
[1] [2,3] 
[1,2] [3] 
[1,2,3] [] 
| ?- 
+0

+1でgprolog呼び出します。ところで、[GNU Prolog 1.4.1](http://gprolog.univ-paris1.fr/unstable/?C=M;O=D) – false

+0

@false:私は今朝ソースからインストールしました。どのくらい速く動いている... – CapelliC

関連する問題