Missing column `calanderdata` in database

Good day

In one of our installations with NC 14.0.4 running in NextCloudPi, there is no column calenderdata in the database.

Error message on updates
Doctrine\DBAL\Exception\InvalidFieldNameException: An exception occurred while executing 'SELECT `calendarid`, `uri` FROM `oc_calendarobjects` WHERE `calendardata` LIKE ?' with params ["%;VALUE=:%"]:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'calendardata' in 'where clause'

Luckily, the installation is still usable, however, no updates (and maitenance:repairs) are possible.

Can the column calenderdata simply be created to resolve the issue? What structure does this column need?

Thanks for your help.
We hope that we don’t need to set up a fresh instance of Nextcloud.

Regards
boott

I have found serveral error in my logs too, so i look in to my Database an some tables was missing.
I make an fresh install and copy the missing Tables from there.

her are the tables from the fresh installation

– Tabellenstruktur für Tabelle oc_calendarchanges

CREATE TABLE oc_calendarchanges (
id bigint(20) UNSIGNED NOT NULL,
uri varchar(255) COLLATE utf8_bin DEFAULT NULL,
synctoken int(10) UNSIGNED NOT NULL DEFAULT ‘1’,
calendarid bigint(20) NOT NULL,
operation smallint(6) NOT NULL,
calendartype int(11) NOT NULL DEFAULT ‘0’
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;



– Tabellenstruktur für Tabelle oc_calendarobjects

CREATE TABLE oc_calendarobjects (
id bigint(20) UNSIGNED NOT NULL,
calendardata longblob,
uri varchar(255) COLLATE utf8_bin DEFAULT NULL,
calendarid bigint(20) UNSIGNED NOT NULL,
lastmodified int(10) UNSIGNED DEFAULT NULL,
etag varchar(32) COLLATE utf8_bin DEFAULT NULL,
size bigint(20) UNSIGNED NOT NULL,
componenttype varchar(8) COLLATE utf8_bin DEFAULT NULL,
firstoccurence bigint(20) UNSIGNED DEFAULT NULL,
lastoccurence bigint(20) UNSIGNED DEFAULT NULL,
uid varchar(255) COLLATE utf8_bin DEFAULT NULL,
classification int(11) DEFAULT ‘0’,
calendartype int(11) NOT NULL DEFAULT ‘0’
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;



– Tabellenstruktur für Tabelle oc_calendarobjects_props

CREATE TABLE oc_calendarobjects_props (
id bigint(20) UNSIGNED NOT NULL,
calendarid bigint(20) NOT NULL DEFAULT ‘0’,
objectid bigint(20) UNSIGNED NOT NULL DEFAULT ‘0’,
name varchar(64) COLLATE utf8_bin DEFAULT NULL,
parameter varchar(64) COLLATE utf8_bin DEFAULT NULL,
value varchar(255) COLLATE utf8_bin DEFAULT NULL,
calendartype int(11) NOT NULL DEFAULT ‘0’
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;



– Tabellenstruktur für Tabelle oc_calendars

CREATE TABLE oc_calendars (
id bigint(20) UNSIGNED NOT NULL,
principaluri varchar(255) COLLATE utf8_bin DEFAULT NULL,
displayname varchar(255) COLLATE utf8_bin DEFAULT NULL,
uri varchar(255) COLLATE utf8_bin DEFAULT NULL,
synctoken int(10) UNSIGNED NOT NULL DEFAULT ‘1’,
description varchar(255) COLLATE utf8_bin DEFAULT NULL,
calendarorder int(10) UNSIGNED NOT NULL DEFAULT ‘0’,
calendarcolor varchar(255) COLLATE utf8_bin DEFAULT NULL,
timezone longtext COLLATE utf8_bin,
components varchar(64) COLLATE utf8_bin DEFAULT NULL,
transparent smallint(6) NOT NULL DEFAULT ‘0’
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;


– Daten für Tabelle oc_calendars

INSERT INTO oc_calendars (id, principaluri, displayname, uri, synctoken, description, calendarorder, calendarcolor, timezone, components, transparent) VALUES
(1, ‘principals/users/marcel’, ‘Personal’, ‘personal’, 1, NULL, 0, NULL, NULL, ‘VEVENT,VTODO’, 0);



– Tabellenstruktur für Tabelle oc_calendarsubscriptions

CREATE TABLE oc_calendarsubscriptions (
id bigint(20) UNSIGNED NOT NULL,
uri varchar(255) COLLATE utf8_bin DEFAULT NULL,
principaluri varchar(255) COLLATE utf8_bin DEFAULT NULL,
displayname varchar(100) COLLATE utf8_bin DEFAULT NULL,
refreshrate varchar(10) COLLATE utf8_bin DEFAULT NULL,
calendarorder int(10) UNSIGNED NOT NULL DEFAULT ‘0’,
calendarcolor varchar(255) COLLATE utf8_bin DEFAULT NULL,
striptodos smallint(6) DEFAULT NULL,
stripalarms smallint(6) DEFAULT NULL,
stripattachments smallint(6) DEFAULT NULL,
lastmodified int(10) UNSIGNED DEFAULT NULL,
synctoken int(10) UNSIGNED NOT NULL DEFAULT ‘1’,
source longtext COLLATE utf8_bin
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;



– Tabellenstruktur für Tabelle oc_calendar_invitations

CREATE TABLE oc_calendar_invitations (
id bigint(20) UNSIGNED NOT NULL,
uid varchar(255) COLLATE utf8_bin NOT NULL,
recurrenceid varchar(255) COLLATE utf8_bin DEFAULT NULL,
attendee varchar(255) COLLATE utf8_bin NOT NULL,
organizer varchar(255) COLLATE utf8_bin NOT NULL,
sequence bigint(20) UNSIGNED DEFAULT NULL,
token varchar(60) COLLATE utf8_bin NOT NULL,
expiration bigint(20) UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;



– Tabellenstruktur für Tabelle oc_calendar_resources

CREATE TABLE oc_calendar_resources (
id bigint(20) UNSIGNED NOT NULL,
backend_id varchar(64) COLLATE utf8_bin DEFAULT NULL,
resource_id varchar(64) COLLATE utf8_bin DEFAULT NULL,
email varchar(255) COLLATE utf8_bin DEFAULT NULL,
displayname varchar(255) COLLATE utf8_bin DEFAULT NULL,
group_restrictions varchar(4000) COLLATE utf8_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;



– Tabellenstruktur für Tabelle oc_calendar_rooms

CREATE TABLE oc_calendar_rooms (
id bigint(20) UNSIGNED NOT NULL,
backend_id varchar(64) COLLATE utf8_bin DEFAULT NULL,
resource_id varchar(64) COLLATE utf8_bin DEFAULT NULL,
email varchar(255) COLLATE utf8_bin DEFAULT NULL,
displayname varchar(255) COLLATE utf8_bin DEFAULT NULL,
group_restrictions varchar(4000) COLLATE utf8_bin DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;