diff options
author | Madhura Jayaratne <madhura.cj@gmail.com> | 2016-02-11 13:02:33 +0300 |
---|---|---|
committer | Madhura Jayaratne <madhura.cj@gmail.com> | 2016-02-11 13:11:16 +0300 |
commit | 59342451abae66b969dd7acd9818f678058990d6 (patch) | |
tree | e9990c6bef8f0c4a2d5d24b18e89afc3faedde4c /tbl_replace.php | |
parent | 7b80d2cb3d62af0fd68b85dae630d0f01fdfb5ce (diff) |
Fix #11909 Can't insert row into table that contains generated column
Signed-off-by: Madhura Jayaratne <madhura.cj@gmail.com>
Conflicts:
ChangeLog
Diffstat (limited to 'tbl_replace.php')
-rw-r--r-- | tbl_replace.php | 20 |
1 files changed, 13 insertions, 7 deletions
diff --git a/tbl_replace.php b/tbl_replace.php index 00d37a335e..9e61c13ff2 100644 --- a/tbl_replace.php +++ b/tbl_replace.php @@ -182,6 +182,10 @@ foreach ($loop_array as $rownumber => $where_clause) { = isset($_REQUEST['auto_increment']['multi_edit'][$rownumber]) ? $_REQUEST['auto_increment']['multi_edit'][$rownumber] : null; + $multi_edit_virtual + = isset($_REQUEST['virtual']['multi_edit'][$rownumber]) + ? $_REQUEST['virtual']['multi_edit'][$rownumber] + : null; // When a select field is nullified, it's not present in $_REQUEST // so initialize it; this way, the foreach($multi_edit_columns) will process it @@ -262,13 +266,15 @@ foreach ($loop_array as $rownumber => $where_clause) { $gis_from_wkb_functions, $func_optional_param, $func_no_param, $key ); - list($query_values, $query_fields) - = PMA_getQueryValuesForInsertAndUpdateInMultipleEdit( - $multi_edit_columns_name, $multi_edit_columns_null, $current_value, - $multi_edit_columns_prev, $multi_edit_funcs, $is_insert, - $query_values, $query_fields, $current_value_as_an_array, - $value_sets, $key, $multi_edit_columns_null_prev - ); + if (! isset($multi_edit_virtual) || ! isset($multi_edit_virtual[$key])) { + list($query_values, $query_fields) + = PMA_getQueryValuesForInsertAndUpdateInMultipleEdit( + $multi_edit_columns_name, $multi_edit_columns_null, $current_value, + $multi_edit_columns_prev, $multi_edit_funcs, $is_insert, + $query_values, $query_fields, $current_value_as_an_array, + $value_sets, $key, $multi_edit_columns_null_prev + ); + } if (isset($multi_edit_columns_null[$key])) { $multi_edit_columns[$key] = null; } |