Update von 17 auf 18 fehlgeschlagen -> oc_flow_operations

So könnten die Befehle aussehen (ungetestet) :wink:

  1. Öffnen der Datenbank: sqlite3 ./gsp.db
  2. Anzeigen der existierenden Tabellen: .tables
  3. Anzeigen des Tabellenaufbaus: .schema oc_flow_operations
  4. Befehl ausführen: alter table oc_flow_operations add column entity character varying(256) not null;
  5. Anzeigen des Tabellenaufbaus: .schema oc_flow_operations
  6. Datenbank-Konsole verlassen: .quit

Ok das hat funktioniert, doch nun kommt gleich der nächste Fehler

Doctrine\DBAL\DBALException: Unknown database type character varying requested, OC\DB\OCSqlitePlatform may not support it.

Da kann ich Dir jetzt nicht weiterhelfen, da ich selbst keine SQLite-Datenbank verwende. Ich gehe davon aus, dass SQLite3 den Ausdruck “**character varying(256)*” nicht versteht und der Befehl deshalb geringfügi modifiziert werden muss.

Vielleicht findet sich hier ja noch ein SQLite-Datenbank-Nutzer, der einmal das Tabellenschema von “oc_flow_operations” hier postet.

ich denke für die sqlite Datenbank wäre folgender Befehl besser gewesen:

ALTER TABLE oc_flow_operations ADD COLUMN entity VARCHAR;

leider bekomme ich nun folgenden Meldung:

Error: duplicate column name: entity

Kann mir ein SQLite-Datenbank-Nutzer hier helfen???

Vielleicht helfen Dir diese Informationen weiter:


https://stackoverrun.com/de/q/1473609

OK Nextcloud funktioniert wieder
Danke an j-ed für den suport
hier mein Lösungsweg:

nur für Datenbank: SQLite
Ort der Datenbank suchen: z.B /Data oder /nextcloud_data
DB auf Rechner laden
DB in einem DB Browser wie DB Browser for SQLite öffnen

Im DB-Browser für SQLite:

  1. Registerkarte „Datenbankstruktur“
  2. Tabelle oc_flow_operations wählen
  3. die Spalte, entity wählen
  4. Klick auf Feld und tragen Sie VARCHAR ein und dann auf OK

DB wieder hochladen.

zack-bum-fertig

1 Like

@j-ed suche immer noch nach einer Lösung für pgsql.
Vielleicht ne Idee?

Danke und Gruß

I’m personally not using PostgreSQL but as usual you will find information about the command syntax on the internet. At first I would expect that the “alter table” command works as expected.

Ich habe nach diesem Drama etwas Angst von V18 auf V19 zu updaten. Sollte man auf V19 oder V20 updaten?

unbedingt KEINE Majorversion überspringen!

Und mach vor dem Upgraden ein Backup. (Ich würde Dir auch noch empfehlen von SQLite wegzugehen)

Welche DB kann ich verwenden? und wie wechselt man die DB?

schau mal hier… →
https://docs.nextcloud.com/server/18/admin_manual/configuration_database/db_conversion.html

Guten Abend,
ich bin noch neu in diesem Forum und nutze Nextcloud als privaten zentralen Speicher. Jetzt habe ich beim Update auf Version 18.0.10 folgende Fehlermeldung erhalten:

InvalidArgumentException: Column name “oc_flow_operations”.“entity” is NotNull, but has empty string or null as default.
Update vorbereiten
Log-Level auf “debug” gesetzt
Wartungsmodus eingeschaltet
Reparaturschritt: Repair MySQL collation
Reparaturinformation: All tables already have the correct collation -> nothing to do
Reparaturschritt: Repair SQLite autoincrement
Reparaturschritt: Copy data from accounts table when migrating from ownCloud
Reparaturschritt: Drop account terms table when migrating from ownCloud
Das Datenbankschema wird aktualisiert
Datenbank aktualisiert
InvalidArgumentException: Column name “oc_flow_operations”.“entity” is NotNull, but has empty string or null as default.

Können Sie mir helfen, dieses Problem zu lösen?

das hier --> Update von 17 auf 18 fehlgeschlagen -> oc_flow_operations (posting 2 aus diesem thread)

funktioniert nicht für dich?

wenn du eine SQLite DB hast ist dies mein Lösungsweg gewesen

Bin mittlerweile auch von SQLite zu MariaDB gewechselt. Ohne Probleme.
Ich möchte euch die sehr gute NextCloud Doku ans Herz legen.
Einen Link direkt in zum Datenbanken-Kapitel hier:

https://docs.nextcloud.com/server/20/admin_manual/configuration_database/index.html

2 Likes

Bei mir hat die Korrektur mit der mariadb-Datenbank der Befehl zum Ändern der Tabelle erst mit einem angehängten \g funktioniert. Also:

use <datenbankname>
MariaDB [datenbankname]> alter table oc_flow_operations add column entity character varying(256) not null\g  

Mit dem Semikolon am Ende gabs immer die erwähnten Fehlermeldungen.

Spielmops

Können Sie mir mitteilen, in welchem Ordner die Datenbank normalerweise gespeichert wird? Ich habe die Ordner durchsucht und keine Datenbank mit dem Namen nextcloud gefunden. Dieser steht als DB-Name in der config.php.
Und wie kann ich mich an der DB anmelden, um einen Befehl abzusetzen?
Vielen Dank für die Antworten.

bei mir im Ordner “nextcloud_data”
die Datei endet mit XXX.db

Vielen Dank für die Hilfe.
Ich habe das Update einspielen können, indem ich folgende PHP Datei verändert habe:
/config/www/nextcloud/apps/workflowengine/lib/Migration/Version2000Date20190808074233.php