Commit d8aa30a6 by Jose Antonio

Pictocat populated on install and generate category tree table

- Added one task to load pictocat data
- Added procedure to create a category tree in table pictocattree
parent ee8d0a2e
...@@ -49,3 +49,8 @@ UNLOCK TABLES; ...@@ -49,3 +49,8 @@ UNLOCK TABLES;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2017-01-17 9:48:07 -- Dump completed on 2017-01-17 9:48:07
--
-- Creacion y volcado de datos para la tabla `pictocattree`
--
source /vagrant/roles/database/files/pictocat_tree_populate.sql
DROP TABLE IF EXISTS `pictocattree`;
CREATE TABLE pictocattree(
id_cat INT,
id_ancestor INT,
CONSTRAINT pk_primary_key PRIMARY KEY (id_cat, id_ancestor),
INDEX (id_ancestor)
);
DELIMITER $$
DROP PROCEDURE IF EXISTS picto_cat_tree $$
CREATE PROCEDURE picto_cat_tree()
BEGIN
DECLARE done, populated INT DEFAULT FALSE;
DECLARE _id, _id_supercat, x, _id_cat, _id_ancestor INT;
DECLARE pictocat CURSOR FOR SELECT id,id_supercat FROM pictodb.pictocat;
DECLARE pictocattree CURSOR FOR SELECT id_cat, id_ancestor FROM pictodb.pictocattree where id_cat = x;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
OPEN pictocat;
DELETE FROM pictocattree;
read_loop: LOOP
FETCH pictocat INTO _id, _id_supercat;
IF done THEN
LEAVE read_loop;
END IF;
INSERT INTO pictocattree (id_cat,id_ancestor) VALUES (_id, _id_supercat);
IF _id_supercat != 0 THEN
SET populated = 0;
populate_loop: LOOP
SET x = _id_supercat;
OPEN pictocattree;
FETCH pictocattree INTO _id_cat, _id_ancestor;
INSERT INTO pictocattree (id_cat, id_ancestor) VALUES (_id, _id_ancestor);
IF _id_ancestor = 0 THEN
LEAVE populate_loop;
END IF;
END LOOP;
CLOSE pictocattree;
END IF;
END LOOP;
CLOSE pictocat;
END $$
DELIMITER ;
CALL picto_cat_tree();
...@@ -24,6 +24,14 @@ ...@@ -24,6 +24,14 @@
state: import state: import
target: "{{ server_path }}/{{ database_files_relative_path }}/symbolstix.sql" target: "{{ server_path }}/{{ database_files_relative_path }}/symbolstix.sql"
- name: Imports symbolstix categories
mysql_db:
login_user: "{{ database_user }}"
login_password: "{{ database_user_passwd }}"
name: "{{ database_name }}"
state: import
target: "{{ server_path }}/{{ database_files_relative_path }}/pictocat.sql"
- name: Imports application essential data - name: Imports application essential data
mysql_db: mysql_db:
login_user: "{{ database_user }}" login_user: "{{ database_user }}"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment