function modify_domain($olddef, $domdef) { global $dbhandle, $ib_error; $lsql = array(); if ($domdef['name'] != $olddef['name']) { $lsql[] = 'ALTER DOMAIN ' . $olddef['name'] . ' TO ' . $domdef['name']; } if (datatype_is_modified($olddef, $domdef)) { $lsql[] = 'ALTER DOMAIN ' . $domdef['name'] . ' TYPE ' . build_datatype($domdef); } if (isset($olddef['default']) && $olddef['default'] != '' && $domdef['default'] == '') { $lsql[] = 'ALTER DOMAIN ' . $domdef['name'] . ' DROP DEFAULT'; } if (isset($olddef['default']) && $domdef['default'] != '' && $olddef['default'] != $domdef['default']) { $lsql[] = 'ALTER DOMAIN ' . $domdef['name'] . ' SET DEFAULT ' . $domdef['default']; } if (isset($olddef['check']) && !empty($olddef['check']) && (empty($domdef['check']) || $olddef['check'] != $domdef['check'])) { $lsql[] = 'ALTER DOMAIN ' . $domdef['name'] . ' DROP CONSTRAINT'; } if (isset($olddef['check']) && $olddef['check'] != $domdef['check']) { $lsql[] = 'ALTER DOMAIN ' . $domdef['name'] . ' ADD CHECK ' . $domdef['check']; } foreach ($lsql as $sql) { if (DEBUG) { add_debug($sql, __FILE__, __LINE__); } if (!@fbird_query($dbhandle, $sql)) { $ib_error = fbird_errmsg() . "<br>\n>"; return FALSE; } } return TRUE; }
$s_coldefs = array(); } else { $s_coldefs['mod']['pk_del'] = $s_coldefs['mod']['fk_del'] = $s_coldefs['mod']['uq_del'] = FALSE; $col_mod_flag = TRUE; $js_stack .= js_request_table_columns(); } } // // altering the column definitions // if (isset($_POST['tb_modcol_doit'])) { $mod_flag = FALSE; $sql = 'ALTER TABLE ' . $s_modify_name . ' '; save_coldef('mod'); if (!isset($s_coldefs['mod']['domain']) || $s_coldefs['mod']['domain'] != 'Yes') { if (datatype_is_modified($s_coldefs['old'], $s_coldefs['mod'])) { // build sql for altering datatype definition $sql .= 'ALTER ' . $s_modify_col . ' TYPE ' . build_datatype($s_coldefs['mod']) . ', '; $mod_flag = TRUE; } // the delete primary key checkbox is checked if ($s_coldefs['mod']['pk_del'] == TRUE) { $sql .= 'DROP CONSTRAINT ' . $s_coldefs['old']['primary'] . ', '; $mod_flag = TRUE; } // the delete foreign key checkbox is checked if ($s_coldefs['mod']['fk_del'] == TRUE) { $sql .= 'DROP CONSTRAINT ' . $s_coldefs['old']['fk_name'] . ', '; $mod_flag = TRUE; } // the delete unique constraint checkbox is checked