s400t****@yahoo*****
s400t****@yahoo*****
2017年 8月 4日 (金) 15:12:24 JST
お返事、ありがとうございます。 こちらもツール(phpPgAdmin)のバージョンは同じ(phpPgAdmin-5.1-1.rhel6.noarch)です。 データベースにログインして、コマンドラインでsql文実行しても同じエラー出ているのでツールの問題ではないと思いますね。 ちなみに、rpm -qaでgroonga関係出力は以下: groonga-libs-7.0.5-1.el6.x86_64 groonga-release-1.3.0-1.noarch もしかして、私が使っているリリースは「&@~」オペレーターが入っているリリースではない、、、、このことでしょうか。 https://pgroonga.github.io/ja/reference/operators/query.htmlにて、 「この演算子(@@のこと)は1.2.0から非推奨です。代わりに&@~演算子を使ってください。」 ↑の1.2.0というのは、xxx-release-1.2.0-xxxxのことでしょうか。 なら、「&@~」オペレーターが入っているはずでしょうね。 (現在groonga-release-1.3.0-1使用中ですので) ちょっと分からなくなった。 週末入っているのでクリーンな環境作って、最初からpgroonga_test/memoなど小規模でテストしてみたいと思います。 で、次はCREATE EXTENSION pgroongaのことですね。 「select * from pg_extension」を実行すると以下の結果になります。 testdb=> select * from pg_extension; extname | extowner | extnamespace | extrelocatable | extversion | extconfig | extcondition ----------+----------+--------------+----------------+------------+-----------+-------------- plpgsql | 10 | 11 | f | 1.0 | | pgroonga | 10 | 2200 | f | 1.2.1 | | (2 rows) ↑を見るとextversion 1.2.1(※)で、やはり「&@~」オペレーターは使えるはずですよね。 他にお気づきなところありましたら、ぜひお願いします。 以上です。 (※):groonga-release-nnn-のバージョンとpgroonga(=pg_extension)のバージョンは別もんですね! 少し見えて来ました。。。 ----- Original Message ----- >From: Kentaro Hayashi <hayas****@clear*****> >To: groon****@lists***** >Date: 2017/8/3, Thu 13:27 >Subject: [groonga-dev,04426] Re: &@~オペレーターのUndefined function: 7 ERROR: operator does not exist:エラー > >林です。 > >On Wed, 2 Aug 2017 20:17:50 +0900 (JST) >s400t****@yahoo***** wrote: > >> お返事、ありがとうございます。 >> >> >(前のバージョンでできていたというのはちょっとよくわからないのですが。。。) >> @@オペレーター使って、以前は検索出来ていたということです。 >> >> か、 >> 今日また@@オペレーター使ってみたら、正常に検索出来ています。 >> >> で、なんで&@~オペレーターを使ったのか: >> どこかで、「この演算子=@@のこと=は1.2.0から非推奨です。代わりに&@~演算子を使ってください。」と書いていたので。 >> >> 今日、@@オペレーターで正常に検索出来たのはbackward compatibilityのおかげでしょうか。 >> >> 項目1 or 項目2検索で、いつかは「&@~」オペレーターしか使えないのなら、今からでもそのオペレーターを使った方が良いでしょうと思って、試したのです。 >> > >そうですね、そのほうがよいと思います。 > >> 今日は、phpPgAdminコンソールのsql実行するところで、直接sql実行したました。 >> 林さんが書いてくださったサンプルのsql文ですが、bindValueなしで、 >> >> SELECT * FROM memos WHERE target_col &@~ '東京 OR 大阪'; >> >> >> ↑を実行しました。 >> >> 結果は前回と同じエラーです。 >> >> エラー: >> >> ERROR: operator does not exist: text &@~ unknown >> LINE 1: SELECT * FROM memos WHERE target_col &@~ '東京 OR 大阪'... ^ >> HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts. > >うーん不思議ですねぇ。手元では↑エラーにならないんですが。。。 >(;が全角になっているのは直しましたけど。) > >NG: SELECT * FROM memos WHERE target_col &@~ '東京 OR 大阪'; >OK: SELECT * FROM memos WHERE target_col &@~ '東京 OR 大阪'; > > >ちなみに手元では以下のバージョンでためしました。 >$ rpm -q phpPgAdmin >phpPgAdmin-5.1-1.rhel6.noarch > >http://pgroonga.github.io/ja/install/centos.html で案内されている手順はエラーなく実行できているんですよね? > >「作成したデータベースに接続し、CREATE EXTENSION pgroongaを実行します。 >% sudo -u postgres -H psql -d pgroonga_test --command 'CREATE EXTENSION pgroonga'」の部分です。 > >select * from pg_extension などとしてpgroongaがいれば正しくインストールできています。 > >-- >Kentaro Hayashi <hayas****@clear*****> > >_______________________________________________ >groonga-dev mailing list >groon****@lists***** >http://lists.osdn.me/mailman/listinfo/groonga-dev > > > -------------- next part -------------- HTML$B$NE:IU%U%!%$%k$rJ]4I$7$^$7$?(B...Download