null+****@clear*****
null+****@clear*****
2011年 10月 24日 (月) 16:47:34 JST
Kouhei Sutou 2011-10-24 07:47:34 +0000 (Mon, 24 Oct 2011) New Revision: 2f9c70e112bb994143ea493b323d29de497b4cdb Log: [test][wrapper] add a test for create index and drop index. It's for multiple column index for fulltext search. Added files: test/sql/groonga_wrapper/r/fulltext_multiple_column_index_recreate.result test/sql/groonga_wrapper/t/fulltext_multiple_column_index_recreate.test Added: test/sql/groonga_wrapper/r/fulltext_multiple_column_index_recreate.result (+42 -0) 100644 =================================================================== --- /dev/null +++ test/sql/groonga_wrapper/r/fulltext_multiple_column_index_recreate.result 2011-10-24 07:47:34 +0000 (ecae949) @@ -0,0 +1,42 @@ +drop table if exists diaries; +set names utf8; +create table diaries ( +id int primary key, +title varchar(255), +content text, +fulltext index (title, content), +fulltext index (title), +fulltext index (content) +) default charset utf8 COMMENT = 'engine "innodb"'; +show create table diaries; +Table Create Table +diaries CREATE TABLE `diaries` ( + `id` int(11) NOT NULL, + `title` varchar(255) DEFAULT NULL, + `content` text, + PRIMARY KEY (`id`), + FULLTEXT KEY `title` (`title`,`content`), + FULLTEXT KEY `title_2` (`title`), + FULLTEXT KEY `content` (`content`) +) ENGINE=groonga DEFAULT CHARSET=utf8 COMMENT='engine "innodb"' +insert into diaries values(1, "Hello", "はじめました。"); +insert into diaries values(2, "天気", "明日の富士山の天気について"); +insert into diaries values(3, "富士山", "今日もきれい。"); +select * from diaries where match(title, content) against("富士山"); +id title content +2 天気 明日の富士山の天気について +3 富士山 今日もきれい。 +drop index title on diaries; +select * from diaries where match(title, content) against("富士山"); +ERROR HY000: Can't find FULLTEXT index matching the column list +create fulltext index new_title_content_index on diaries (title, content); +select * from diaries where match(title, content) against("富士山"); +id title content +2 天気 明日の富士山の天気について +3 富士山 今日もきれい。 +select * from diaries; +id title content +1 Hello はじめました。 +2 天気 明日の富士山の天気について +3 富士山 今日もきれい。 +drop table diaries; Added: test/sql/groonga_wrapper/t/fulltext_multiple_column_index_recreate.test (+50 -0) 100644 =================================================================== --- /dev/null +++ test/sql/groonga_wrapper/t/fulltext_multiple_column_index_recreate.test 2011-10-24 07:47:34 +0000 (1cf6af9) @@ -0,0 +1,50 @@ +# Copyright(C) 2011 Kouhei Sutou <kou****@clear*****> +# +# This library is free software; you can redistribute it and/or +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# This library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with this library; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +--source suite/groonga_include/groonga_init.inc + +--disable_warnings +drop table if exists diaries; +--enable_warnings + +set names utf8; +create table diaries ( + id int primary key, + title varchar(255), + content text, + fulltext index (title, content), + fulltext index (title), + fulltext index (content) +) default charset utf8 COMMENT = 'engine "innodb"'; +show create table diaries; + +insert into diaries values(1, "Hello", "はじめました。"); +insert into diaries values(2, "天気", "明日の富士山の天気について"); +insert into diaries values(3, "富士山", "今日もきれい。"); +select * from diaries where match(title, content) against("富士山"); + +drop index title on diaries; +--error 1191 +select * from diaries where match(title, content) against("富士山"); + +create fulltext index new_title_content_index on diaries (title, content); +select * from diaries where match(title, content) against("富士山"); + +select * from diaries; + +drop table diaries; + +--source suite/groonga_include/groonga_deinit.inc