summaryrefslogtreecommitdiffstats
path: root/application/migrations/008_add_profiles.php
diff options
context:
space:
mode:
authorRafael Bodill <rafi@sortex.co.il>2014-09-18 21:02:26 +0200
committerRafael Bodill <rafi@sortex.co.il>2014-09-18 21:02:26 +0200
commit33f542487a89da4a8edad934b82aae7484f70ca3 (patch)
tree778650804404efa3546f71a0b49955f7eac43c57 /application/migrations/008_add_profiles.php
parentd2c309aee8189a5d6c2a3fcb0a05ea694d7b646e (diff)
Migrations support for PostgreSQL
Diffstat (limited to 'application/migrations/008_add_profiles.php')
-rw-r--r--application/migrations/008_add_profiles.php60
1 files changed, 44 insertions, 16 deletions
diff --git a/application/migrations/008_add_profiles.php b/application/migrations/008_add_profiles.php
index 3fea33c08..1e55c7d14 100644
--- a/application/migrations/008_add_profiles.php
+++ b/application/migrations/008_add_profiles.php
@@ -5,27 +5,55 @@ class Migration_Add_profiles extends CI_Migration {
public function up()
{
- $this->db->query("
- CREATE TABLE `profiles` (
- `user` int(8) unsigned NOT NULL,
- `upload_id_limits` varchar(255) COLLATE utf8_bin NOT NULL,
- PRIMARY KEY (`user`)
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin
- ");
+ if ($this->db->dbdriver == 'postgre')
+ {
+ $this->db->query('
+ CREATE TABLE "profiles" (
+ "user" integer NOT NULL,
+ "upload_id_limits" varchar(255) NOT NULL,
+ PRIMARY KEY ("user")
+ )
+ ');
- $this->db->query("
- ALTER TABLE `files` CHANGE `id` `id` VARCHAR( 255 );
- ");
+ $this->db->query('
+ ALTER TABLE "files" ALTER COLUMN "id" TYPE varchar(255);
+ ');
+ }
+ else
+ {
+ $this->db->query("
+ CREATE TABLE `profiles` (
+ `user` int(8) unsigned NOT NULL,
+ `upload_id_limits` varchar(255) COLLATE utf8_bin NOT NULL,
+ PRIMARY KEY (`user`)
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin
+ ");
+ $this->db->query("
+ ALTER TABLE `files` CHANGE `id` `id` VARCHAR( 255 );
+ ");
+ }
}
public function down()
{
- $this->db->query("
- DROP TABLE `profiles`;
- ");
- $this->db->query("
- ALTER TABLE `files` CHANGE `id` `id` VARCHAR( 6 );
- ");
+ if ($this->db->dbdriver == 'postgre')
+ {
+ $this->db->query('
+ DROP TABLE "profiles";
+ ');
+ $this->db->query('
+ ALTER TABLE "files" ALTER COLUMN "id" TYPE varchar(6);
+ ');
+ }
+ else
+ {
+ $this->db->query("
+ DROP TABLE `profiles`;
+ ");
+ $this->db->query("
+ ALTER TABLE `files` CHANGE `id` `id` VARCHAR( 6 );
+ ");
+ }
}
}