--- /dev/null
+<?php
+class HordePermsBaseTables extends Horde_Db_Migration_Base
+{
+ public function up()
+ {
+ if (!in_array('horde_perms', $this->tables())) {
+ $t = $this->createTable('horde_perms', array('primaryKey' => array('perm_id')));
+ $t->column('perm_id', 'integer', array('null' => false));
+ $t->column('perm_name', 'string', array('limit' => 255, 'null' => false));
+ $t->column('perm_parents', 'string', array('limit' => 255, 'null' => false));
+ $t->column('perm_data', 'text');
+ $t->end();
+ $this->addIndex('horde_perms', array('perm_name'), array('unique' => true));
+ }
+ }
+
+ public function down()
+ {
+ $this->dropTable('horde_perms');
+ }
+}
--- /dev/null
+<?php
+class HordePermsUpgradeAutoIncrement extends Horde_Db_Migration_Base
+{
+ public function up()
+ {
+ $this->changeColumn('horde_perms', 'perm_id', 'integer', array('null' => false, 'unsigned' => true, 'default' => null, 'autoincrement' => true));
+ }
+
+ public function down()
+ {
+ $this->changeColumn('horde_perms', 'perm_id', 'integer', array('null' => false));
+ }
+}
\ No newline at end of file
+++ /dev/null
-CREATE TABLE horde_perms (
- perm_id INT(11) NOT NULL AUTO_INCREMENT,
- perm_name VARCHAR(255) NOT NULL,
- perm_parents VARCHAR(255) NOT NULL,
- perm_data TEXT,
- PRIMARY KEY (perm_id),
- UNIQUE KEY perm_name (perm_name)
-);
+++ /dev/null
-CREATE TABLE horde_perms (
- perm_id NUMBER(16) NOT NULL,
- perm_name VARCHAR2(255) NOT NULL UNIQUE,
- perm_parents VARCHAR2(255) NOT NULL,
- perm_data CLOB,
- PRIMARY KEY (perm_id)
-);
-
-CREATE SEQUENCE horde_perms_id_seq;
-CREATE TRIGGER horde_perms_id_trigger
-BEFORE INSERT ON horde_perms
-FOR EACH ROW
-BEGIN
-SELECT horde_perms_id_seq.nextval INTO :new.permid FROM dual;
-END;
\ No newline at end of file
+++ /dev/null
-CREATE TABLE horde_perms (
- perm_id SERIAL UNIQUE,
- perm_name VARCHAR(255) NOT NULL UNIQUE,
- perm_parents VARCHAR(255) NOT NULL,
- perm_data TEXT,
- PRIMARY KEY (perm_id)
-);
+++ /dev/null
-CREATE TABLE horde_perms (
- perm_id INTEGER NOT NULL AUTO_INCREMENT,
- perm_name VARCHAR(255) NOT NULL,
- perm_parents VARCHAR(255) NOT NULL,
- perm_data TEXT,
- PRIMARY KEY (perm_id)
-);
+++ /dev/null
-ALTER TABLE horde_perms CHANGE COLUMN perm_id perm_id INT(11) NOT NULL AUTO_INCREMENT;
\ No newline at end of file
+++ /dev/null
-CREATE SEQUENCE horde_perms_id_seq;
-CREATE TRIGGER horde_perms_id_trigger
-BEFORE INSERT ON horde_perms
-FOR EACH ROW
-BEGIN
-SELECT horde_perms_id_seq.nextval INTO :new.permid FROM dual;
-END;
+++ /dev/null
-CREATE SEQUENCE horde_perms_id_seq;
-ALTER TABLE horde_perms ALTER COLUMN perm_id SET DEFAULT NEXTVAL('horde_perms_id_seq');