mirror of
https://github.com/FH-Complete/FHC-Core.git
synced 2026-06-13 18:19:27 +00:00
- New migration script for changing chk_person_svnr constraint on table tbl_person
- Changed MigrationLib->execQuery for a better output
This commit is contained in:
@@ -16,6 +16,8 @@ class MigrationLib extends CI_Migration
|
||||
const ERROR_COLOR = 31;
|
||||
const INFO_COLOR = 33;
|
||||
|
||||
const PRINT_QUERY_LEN = 60;
|
||||
|
||||
// HTML colors names
|
||||
private $HTML_COLORS = array(31 => "red", 33 => "orange");
|
||||
// Used to set if the migration process is called via command line or via browser
|
||||
@@ -539,6 +541,10 @@ class MigrationLib extends CI_Migration
|
||||
}
|
||||
}
|
||||
|
||||
$this->printInfo("Query correctly executed");
|
||||
$this->printInfo(
|
||||
"Query correctly executed: " .
|
||||
substr(preg_replace("/\s+/", " ", trim($query)), 0, MigrationLib::PRINT_QUERY_LEN) .
|
||||
(strlen($query) > MigrationLib::PRINT_QUERY_LEN ? "..." : "")
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
if (! defined("BASEPATH")) exit("No direct script access allowed");
|
||||
|
||||
require_once APPPATH . "/libraries/MigrationLib.php";
|
||||
|
||||
class Migration_Person_svnr extends MigrationLib
|
||||
{
|
||||
public function __construct()
|
||||
{
|
||||
parent::__construct();
|
||||
}
|
||||
|
||||
public function up()
|
||||
{
|
||||
$this->startUP();
|
||||
|
||||
$this->execQuery("ALTER TABLE public.tbl_person DROP CONSTRAINT chk_person_svnr");
|
||||
$this->execQuery(
|
||||
"ALTER TABLE public.tbl_person
|
||||
ADD CONSTRAINT chk_person_svnr
|
||||
CHECK (
|
||||
char_length(svnr::text) = 10 OR
|
||||
char_length(svnr::text) = 12 OR
|
||||
char_length(svnr::text) = 16 OR
|
||||
svnr IS NULL
|
||||
)"
|
||||
);
|
||||
|
||||
$this->endUP();
|
||||
}
|
||||
|
||||
public function down()
|
||||
{
|
||||
$this->startDown();
|
||||
|
||||
$this->execQuery("ALTER TABLE public.tbl_person DROP CONSTRAINT chk_person_svnr");
|
||||
$this->execQuery(
|
||||
"ALTER TABLE public.tbl_person
|
||||
ADD CONSTRAINT chk_person_svnr
|
||||
CHECK (
|
||||
char_length(svnr::text) = 10 OR
|
||||
char_length(svnr::text) = 16 OR
|
||||
svnr IS NULL
|
||||
)"
|
||||
);
|
||||
|
||||
$this->endDown();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user