diff options
author | Andrey Andreev <narf@devilix.net> | 2016-06-28 10:06:47 +0200 |
---|---|---|
committer | Andrey Andreev <narf@devilix.net> | 2016-06-28 10:07:19 +0200 |
commit | a09b96900af8615f4bb0b50046588fb3d5e5db84 (patch) | |
tree | 477cc47c4c1782835c23d77c2cbf3af0f6776843 /system/database/drivers/oci8 | |
parent | ac718628e8b486f8016ac775829a32cfbc9fa3da (diff) |
Merge pull request #4678 from kenjis/fix-oci8_forge
DBForge adjustments for Oracle
Diffstat (limited to 'system/database/drivers/oci8')
-rw-r--r-- | system/database/drivers/oci8/oci8_forge.php | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/system/database/drivers/oci8/oci8_forge.php b/system/database/drivers/oci8/oci8_forge.php index 1ca559a32..989c7a8b7 100644 --- a/system/database/drivers/oci8/oci8_forge.php +++ b/system/database/drivers/oci8/oci8_forge.php @@ -54,6 +54,13 @@ class CI_DB_oci8_forge extends CI_DB_forge { protected $_create_database = FALSE; /** + * CREATE TABLE IF statement + * + * @var string + */ + protected $_create_table_if = FALSE; + + /** * DROP DATABASE statement * * @var string @@ -146,4 +153,34 @@ class CI_DB_oci8_forge extends CI_DB_forge { // Not supported - sequences and triggers must be used instead } + // -------------------------------------------------------------------- + + /** + * Field attribute TYPE + * + * Performs a data type mapping between different databases. + * + * @param array &$attributes + * @return void + */ + protected function _attr_type(&$attributes) + { + switch (strtoupper($attributes['TYPE'])) + { + case 'TINYINT': + $attributes['TYPE'] = 'NUMBER'; + return; + case 'MEDIUMINT': + $attributes['TYPE'] = 'NUMBER'; + return; + case 'INT': + $attributes['TYPE'] = 'NUMBER'; + return; + case 'BIGINT': + $attributes['TYPE'] = 'NUMBER'; + return; + default: return; + } + } + } |