migration: Create a script to migrate database from 0.8 to 0.9
This commit is contained in:
parent
d37200addd
commit
ca00c4953c
136
from_0-8_to_0-9.sql
Normal file
136
from_0-8_to_0-9.sql
Normal file
@ -0,0 +1,136 @@
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure `poll`
|
||||
--
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `poll` (
|
||||
`id` CHAR(16) NOT NULL,
|
||||
`admin_id` CHAR(24) NOT NULL,
|
||||
`title` TEXT NOT NULL,
|
||||
`description` TEXT,
|
||||
`admin_name` VARCHAR(64) DEFAULT NULL,
|
||||
`admin_mail` VARCHAR(128) DEFAULT NULL,
|
||||
`creation_date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
|
||||
`end_date` TIMESTAMP NOT NULL DEFAULT '0000-00-00 00:00:00',
|
||||
`format` VARCHAR(1) DEFAULT NULL,
|
||||
`editable` TINYINT(1) DEFAULT '0',
|
||||
`receiveNewVotes` TINYINT(1) DEFAULT '0',
|
||||
`active` TINYINT(1) DEFAULT '1',
|
||||
PRIMARY KEY (`id`)
|
||||
)
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure `slot`
|
||||
--
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `slot` (
|
||||
`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`poll_id` CHAR(16) NOT NULL,
|
||||
`title` TEXT,
|
||||
`moments` TEXT,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
)
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure `comment`
|
||||
--
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `comment` (
|
||||
`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`poll_id` CHAR(16) NOT NULL,
|
||||
`name` TEXT,
|
||||
`comment` TEXT NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
)
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Table structure `vote`
|
||||
--
|
||||
|
||||
CREATE TABLE IF NOT EXISTS `vote` (
|
||||
`id` INT(11) UNSIGNED NOT NULL AUTO_INCREMENT,
|
||||
`poll_id` CHAR(16) NOT NULL,
|
||||
`name` VARCHAR(64) NOT NULL,
|
||||
`choices` TEXT NOT NULL,
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
)
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Migrate data from `sondage` to `poll`
|
||||
--
|
||||
|
||||
INSERT INTO `poll`
|
||||
(`id`, `admin_id`, `title`, `description`, `admin_name`, `admin_mail`, `creation_date`, `end_date`, `format`, `editable`, `receiveNewVotes`, `active`)
|
||||
SELECT
|
||||
`id_sondage`,
|
||||
`id_sondage_admin`,
|
||||
`titre`,
|
||||
`commentaires`,
|
||||
`nom_admin`,
|
||||
`mail_admin`,
|
||||
`titre`,
|
||||
`date_creation`,
|
||||
`date_fin`,
|
||||
SUBSTR(`format`, 1, 1) AS `format`,
|
||||
CASE SUBSTR(`format`, 2, 1)
|
||||
WHEN '+' THEN 1
|
||||
ELSE 0 END AS `editable`,
|
||||
`mailsonde`,
|
||||
CASE SUBSTR(`format`, 2, 1)
|
||||
WHEN '-' THEN 0
|
||||
ELSE 1 END AS `active`
|
||||
FROM sondage;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Migrate data from `sujet_studs` to `slot`
|
||||
--
|
||||
|
||||
-- TODO Migrate this, is not so simple
|
||||
/*INSERT INTO `slot`
|
||||
(`poll_id`, `title`, `moments`)
|
||||
SELECT `id_sondage`,
|
||||
FROM `user_studs`;*/
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Migrate data from `comments` to `comment`
|
||||
--
|
||||
|
||||
INSERT INTO `comment`
|
||||
(`poll_id`, `name`, `comment`)
|
||||
SELECT `id_sondage`, `usercomment`, `comment`
|
||||
FROM `comments`;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
--
|
||||
-- Migrate data from `user_studs` to `vote`
|
||||
--
|
||||
|
||||
INSERT INTO `vote`
|
||||
(`poll_id`, `name`, `choices`)
|
||||
SELECT `id_sondage`, `nom`, REPLACE(REPLACE(REPLACE(`reponses`, '1', 'X'), '2', '1'), 'X', 2)
|
||||
FROM `user_studs`;
|
@ -19,8 +19,8 @@ CREATE TABLE IF NOT EXISTS `poll` (
|
||||
`active` TINYINT(1) DEFAULT '1',
|
||||
PRIMARY KEY (`id`)
|
||||
)
|
||||
ENGINE =InnoDB
|
||||
DEFAULT CHARSET =utf8;
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
@ -36,8 +36,8 @@ CREATE TABLE IF NOT EXISTS `slot` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
)
|
||||
ENGINE =InnoDB
|
||||
DEFAULT CHARSET =utf8;
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
@ -53,8 +53,8 @@ CREATE TABLE IF NOT EXISTS `comment` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
)
|
||||
ENGINE =InnoDB
|
||||
DEFAULT CHARSET =utf8;
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
-- --------------------------------------------------------
|
||||
|
||||
@ -70,9 +70,8 @@ CREATE TABLE IF NOT EXISTS `vote` (
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `poll_id` (`poll_id`)
|
||||
)
|
||||
ENGINE =InnoDB
|
||||
DEFAULT CHARSET =utf8
|
||||
AUTO_INCREMENT =160284;
|
||||
ENGINE = InnoDB
|
||||
DEFAULT CHARSET = utf8;
|
||||
|
||||
|
||||
--
|
||||
@ -101,13 +100,13 @@ INSERT INTO `slot` (`poll_id`, `title`, `moments`) VALUES
|
||||
|
||||
INSERT INTO `vote` (`name`, `poll_id`, `choices`) VALUES
|
||||
('marcel', 'aqg259dth55iuhwm', '02202222'),
|
||||
('paul', 'aqg259dth55iuhwm', '20220202'),
|
||||
('paul', 'aqg259dth55iuhwm', '20220202'),
|
||||
('sophie', 'aqg259dth55iuhwm', '22202200'),
|
||||
('barack', 'aqg259dth55iuhwm', '02200000'),
|
||||
('takashi','aqg259dth55iuhwm', '00002202'),
|
||||
('takashi', 'aqg259dth55iuhwm', '00002202'),
|
||||
('albert', 'aqg259dth55iuhwm', '20202200'),
|
||||
('alfred', 'aqg259dth55iuhwm', '02200200'),
|
||||
('marcs', 'aqg259dth55iuhwm', '02000020'),
|
||||
('laure', 'aqg259dth55iuhwm', '00220000'),
|
||||
('benda', 'aqg259dth55iuhwm', '22022022'),
|
||||
('marcs', 'aqg259dth55iuhwm', '02000020'),
|
||||
('laure', 'aqg259dth55iuhwm', '00220000'),
|
||||
('benda', 'aqg259dth55iuhwm', '22022022'),
|
||||
('albert', 'aqg259dth55iuhwm', '22222200');
|
||||
|
Loading…
Reference in New Issue
Block a user