]> git.openstreetmap.org Git - osqa.git/blob - forum_modules/mysqlfulltext/fts_install.sql
5ad821e36017956fcfb02cc36c56f8fcd6742e26
[osqa.git] / forum_modules / mysqlfulltext / fts_install.sql
1 CREATE TABLE forum_mysqlftsindex (
2         id int NOT NULL AUTO_INCREMENT,
3         node_id int NOT NULL UNIQUE,
4         body longtext NOT NULL,
5         PRIMARY KEY (id),
6         FOREIGN KEY (node_id) REFERENCES forum_node (id)   ON UPDATE CASCADE ON DELETE CASCADE,
7         FULLTEXT (body)
8 ) ENGINE=`MyISAM`;
9
10 ALTER TABLE forum_mysqlftsindex CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;
11
12 delimiter |
13
14 CREATE TRIGGER fts_on_insert AFTER INSERT ON forum_node
15   FOR EACH ROW
16   BEGIN
17     INSERT INTO forum_mysqlftsindex (node_id, body) VALUES (NEW.id, UPPER(CONCAT_WS('\n', NEW.title, NEW.body, NEW.tagnames)));
18   END;
19 |
20
21 delimiter |
22
23 CREATE TRIGGER fts_on_update AFTER UPDATE ON forum_node
24   FOR EACH ROW
25   BEGIN
26     UPDATE forum_mysqlftsindex SET body = UPPER(CONCAT_WS('\n', NEW.title, NEW.body, NEW.tagnames)) WHERE node_id = NEW.id;
27   END;
28
29 |
30
31 INSERT INTO forum_mysqlftsindex (node_id, body) SELECT id, UPPER(CONCAT_WS('\n', title, body, tagnames)) FROM forum_node;