Welcome Guest, Not a member yet? Register   Sign In
Issue modifying column using dbforge
#1

Hey guys, so im stuck on trying to edit a column in a table using the dbforge library. What seems to be happening, is its for some reason renaming the table first, before trying to change any of the other attributes... which is really weird to me.

Heres the error..
Quote:Unknown column 'FOO' in 'example_table'

ALTER TABLE `example_table` CHANGE `FOO` `BAR` varchar(15) NOT NULL, CHANGE `FOO` `FOO` varchar(20) NULL

The code snippet is below..

PHP Code:
<?php
$a
['original_name'] = 'FOO';
$a['column_name'  'BAR';

$fields[$a['original_name']] = array();

// Default values for all columns being edited
$fields[$a['original_name']]['name'       $a['column_name'];

// Dynamic values for edited columns
switch($a['type'])
{
 
   case 'text':
 
   case 'string':
 
       $fields[$a['original_name']]['type'       'varchar';
 
       $fields[$a['original_name']]['constraint' = (@is_numeric($a['max']) ? $a['max'] : '255');
 
       $fields[$a['original_name']]['null'       = ($a['required'] ? FALSE TRUE);

 
       if($a['default'])
 
           $fields[$a['original_name']]['default'] = $a['default'];
 
       break;

 
   case 'select':
 
       $fields[$a['original_name']]['type'       "enum('" implode("','"$a['options']) . "')";
 
       $fields[$a['original_name']]['null'       = ($a['required'] ? FALSE TRUE);
 
       $fields[$a['original_name']]['default'    $a['default'];
 
       break;

 
   case 'multiselect':
 
       $fields[$a['original_name']]['type'       "set('" implode("','"$a['options']) . "')";
 
       $fields[$a['original_name']]['null'       = ($a['required'] ? FALSE TRUE);

 
       if($a['default'])
 
           $fields[$a['original_name']]['default'] = implode(','$a['default']);
 
       break;

 
   case 'boolean':
 
       $fields[$a['original_name']]['type'       "enum('0','1')";
 
       $fields[$a['original_name']]['null'       FALSE;
 
       $fields[$a['original_name']]['default'    = ($a['default'] ? '1' '0');
 
       break;
}

// Change the table or log the error
self::$dbf->modify_column($partition_table$fields); 

Any ideas?

Thanks!
Reply


Messages In This Thread
Issue modifying column using dbforge - by jLinux - 07-01-2015, 11:09 PM



Theme © iAndrew 2016 - Forum software by © MyBB