]> git.mxchange.org Git - friendica.git/commitdiff
Print out database error messages
authorMichael <heluecht@pirati.ca>
Sun, 16 Apr 2017 13:21:49 +0000 (13:21 +0000)
committerMichael <heluecht@pirati.ca>
Sun, 16 Apr 2017 13:21:49 +0000 (13:21 +0000)
include/dbstructure.php

index 373d6ddb00ec1113ddf2def87cfd8191998cfc24..aea0fdfedaf1c63cd287c94d8e2d1dc5a626dda9 100644 (file)
@@ -158,6 +158,13 @@ function print_structure($database) {
        }
 }
 
+function print_update_error($db, $message) {
+       echo sprintf(t("\nError %d occured during database update:\n%s\n"),
+               $db->errorno, $db->error);
+
+       return t('Errors encountered performing database changes: ').$message.EOL;
+}
+
 function update_structure($verbose, $action, $tables=null, $definition=null) {
        global $a, $db;
 
@@ -207,7 +214,7 @@ function update_structure($verbose, $action, $tables=null, $definition=null) {
                if (!isset($database[$name])) {
                        $r = db_create_table($name, $structure["fields"], $verbose, $action, $structure['indexes']);
                        if (!dbm::is_result($r)) {
-                               $errors .=  t('Errors encountered creating database tables.').$name.EOL;
+                               $errors .= print_update_error($db, $name);
                        }
                        $is_new_table = True;
                } else {
@@ -364,33 +371,33 @@ function update_structure($verbose, $action, $tables=null, $definition=null) {
                                        } else {
                                                $r = $db->q("CREATE TABLE `".$temp_name."` LIKE `".$name."`;");
                                                if (!dbm::is_result($r)) {
-                                                       $errors .= t('Errors encountered performing database changes.').$sql3.EOL;
+                                                       $errors .= print_update_error($db, $sql3);
                                                        return $errors;
                                                }
                                        }
                                }
 
                                $r = @$db->q($sql3);
-                               if (!dbm::is_result($r))
-                                       $errors .= t('Errors encountered performing database changes.').$sql3.EOL;
-
+                               if (!dbm::is_result($r)) {
+                                       $errors .= print_update_error($db, $sql3);
+                               }
                                if ($is_unique) {
                                        if ($ignore != "") {
                                                $db->q("SET session old_alter_table=0;");
                                        } else {
                                                $r = $db->q("INSERT INTO `".$temp_name."` SELECT * FROM `".$name."`".$group_by.";");
                                                if (!dbm::is_result($r)) {
-                                                       $errors .= t('Errors encountered performing database changes.').$sql3.EOL;
+                                                       $errors .= print_update_error($db, $sql3);
                                                        return $errors;
                                                }
                                                $r = $db->q("DROP TABLE `".$name."`;");
                                                if (!dbm::is_result($r)) {
-                                                       $errors .= t('Errors encountered performing database changes.').$sql3.EOL;
+                                                       $errors .= print_update_error($db, $sql3);
                                                        return $errors;
                                                }
                                                $r = $db->q("RENAME TABLE `".$temp_name."` TO `".$name."`;");
                                                if (!dbm::is_result($r)) {
-                                                       $errors .= t('Errors encountered performing database changes.').$sql3.EOL;
+                                                       $errors .= print_update_error($db, $sql3);
                                                        return $errors;
                                                }
                                        }