---
title: "Important: The link column of pages is nullable now"
manual: "Academic Partners"
version: "main"
permalink: "https://docs.typo3.org/permalink/fgtclb/academic-partners:important-1785882500@main"
source: "Changelog/2.4/Important-PageLinkColumnIsNullable.rst"
rendered: "2026-10-26T19:20:19+00:00"
---

# Important: The `link` column of `pages` is nullable now {#important-1785882500}

## Description {#description}

The extension adds a `link` column to the shared `pages` table.
It was declared as:

```sql
link text NOT NULL DEFAULT '',
```

MySQL cannot store a plain default value on a `TEXT` column. TYPO3 v13
works around that by writing the default in the `DEFAULT ('')` syntax
MySQL 8.0.13 introduced. TYPO3 v12 does not, so there the column was created
`NOT NULL` with no default at all. Every statement that does not name the
column was then rejected, and that includes creating a page in the backend:

```text
SQL error: "Field 'link' doesn't have a default value" (pages:NEW1)
```

No page was created. MariaDB, PostgreSQL and SQLite were never affected.

The column keeps its type and loses the default instead:

```sql
link text DEFAULT NULL,
```

## Impact {#impact}

Creating a page works again on TYPO3 v12 with MySQL.

Records written without naming the column now store `NULL` where
they previously stored an empty string. Existing rows are not changed, so
the column can hold both. Code that reads it should compare with
`empty()` rather than with `''`.

## Affected Installations {#affected-installations}

All installations of this extension. The database schema has to be
updated, either in **Admin Tools > Maintenance > Analyze Database
Structure** or with `vendor/bin/typo3 extension:setup`. The change only
relaxes the column, so no data is converted and nothing can be lost.
