From 33f542487a89da4a8edad934b82aae7484f70ca3 Mon Sep 17 00:00:00 2001 From: Rafael Bodill Date: Thu, 18 Sep 2014 22:02:26 +0300 Subject: Migrations support for PostgreSQL --- application/migrations/003_add_referrers.php | 64 ++++++++++++++++++++-------- 1 file changed, 46 insertions(+), 18 deletions(-) (limited to 'application/migrations/003_add_referrers.php') diff --git a/application/migrations/003_add_referrers.php b/application/migrations/003_add_referrers.php index 524e92ff0..1f6b966e3 100644 --- a/application/migrations/003_add_referrers.php +++ b/application/migrations/003_add_referrers.php @@ -5,28 +5,56 @@ class Migration_Add_referrers extends CI_Migration { public function up() { - $this->db->query(" - CREATE TABLE `invitations` ( - `user` int(8) unsigned NOT NULL, - `key` varchar(16) CHARACTER SET ascii NOT NULL, - `date` int(11) unsigned NOT NULL, - PRIMARY KEY (`key`), - KEY `user` (`user`), - KEY `date` (`date`) - ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin - "); - $this->db->query(" - ALTER TABLE `users` - ADD `referrer` INT(8) UNSIGNED NOT NULL DEFAULT '0' - "); + if ($this->db->dbdriver == 'postgre') + { + $this->db->query(' + CREATE TABLE "invitations" ( + "user" integer NOT NULL, + "key" character varying(16) NOT NULL, + "date" integer NOT NULL, + PRIMARY KEY ("key") + ); + CREATE INDEX "invitations_user_idx" ON "invitations" ("user"); + CREATE INDEX "invitations_date_idx" ON "invitations" ("date"); + '); + $this->db->query(' + ALTER TABLE "users" + ADD "referrer" integer NOT NULL DEFAULT 0 + '); + } + else + { + $this->db->query(" + CREATE TABLE `invitations` ( + `user` int(8) unsigned NOT NULL, + `key` varchar(16) CHARACTER SET ascii NOT NULL, + `date` int(11) unsigned NOT NULL, + PRIMARY KEY (`key`), + KEY `user` (`user`), + KEY `date` (`date`) + ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin + "); + $this->db->query(" + ALTER TABLE `users` + ADD `referrer` INT(8) UNSIGNED NOT NULL DEFAULT '0' + "); + } } public function down() { - $this->db->query(" - ALTER TABLE `users` - DROP `referrer` - "); + if ($this->db->dbdriver == 'postgre') + { + $this->db->query(' + ALTER TABLE "users" DROP "referrer" + '); + } + else + { + $this->db->query(' + ALTER TABLE `users` DROP `referrer` + '); + } $this->dbforge->drop_table('invitations'); } -- cgit v1.2.3-24-g4f1b From fe7f15dbfb8020daf96110e86e359ec01558fcb8 Mon Sep 17 00:00:00 2001 From: Rafael Bodill Date: Thu, 18 Sep 2014 22:47:21 +0300 Subject: Correcting bracket style for 'if' --- application/migrations/003_add_referrers.php | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'application/migrations/003_add_referrers.php') diff --git a/application/migrations/003_add_referrers.php b/application/migrations/003_add_referrers.php index 1f6b966e3..9ca167eab 100644 --- a/application/migrations/003_add_referrers.php +++ b/application/migrations/003_add_referrers.php @@ -5,8 +5,7 @@ class Migration_Add_referrers extends CI_Migration { public function up() { - if ($this->db->dbdriver == 'postgre') - { + if ($this->db->dbdriver == 'postgre') { $this->db->query(' CREATE TABLE "invitations" ( "user" integer NOT NULL, @@ -21,9 +20,9 @@ class Migration_Add_referrers extends CI_Migration { ALTER TABLE "users" ADD "referrer" integer NOT NULL DEFAULT 0 '); - } - else - { + + } else { + $this->db->query(" CREATE TABLE `invitations` ( `user` int(8) unsigned NOT NULL, @@ -48,9 +47,7 @@ class Migration_Add_referrers extends CI_Migration { $this->db->query(' ALTER TABLE "users" DROP "referrer" '); - } - else - { + } else { $this->db->query(' ALTER TABLE `users` DROP `referrer` '); -- cgit v1.2.3-24-g4f1b