Spaltendefinition wird nicht vollständig übernommen

Traceman

Benutzer
Beiträge
9
Hallo,

ich habe eine MariaDB-Datenbank mit einer leeren Tabelle. Eine Spalte soll von "NOT NULL" auf "DEFAULT NULL" geändert werden. Dazu habe ich das eingegeben:

Code:
MariaDB [x]> show create table cache_tasks;

| cache_tasks | CREATE TABLE `cache_tasks` (
  `catSystem` varchar(255) NOT NULL,
  `catTask` varchar(40) NOT NULL,
  `catDescription` varchar(255) NOT NULL,
  `catCreate` timestamp NOT NULL DEFAULT current_timestamp(),
  PRIMARY KEY (`catSystem`,`catTask`,`catDescription`),
  KEY `catCreate` (`catSystem`,`catCreate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

MariaDB [x]> ALTER TABLE cache_tasks MODIFY catTask varchar(255) DEFAULT NULL;
Query OK, 0 rows affected (0.064 sec)
Records: 0  Duplicates: 0  Warnings: 0

MariaDB [x]> show create table cache_tasks;
| cache_tasks | CREATE TABLE `cache_tasks` (
  `catSystem` varchar(255) NOT NULL,
  `catTask` varchar(255) NOT NULL,
  `catDescription` varchar(255) NOT NULL,
  `catCreate` timestamp NOT NULL DEFAULT current_timestamp(),
  PRIMARY KEY (`catSystem`,`catTask`,`catDescription`),
  KEY `catCreate` (`catSystem`,`catCreate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

Die Änderung von 40 auf 255 Zeichen ist nur zur Kontrolle.

Warum wird die Änderung auf "DEFAULT NULL" nicht übernommen? Selbst ein Löschen der Tabelle und das neu Anlegen geht nicht:

Code:
MariaDB [x]> drop table cache_tasks;
Query OK, 0 rows affected (0.073 sec)

MariaDB [x]> CREATE TABLE `cache_tasks` (`catSystem` varchar(255) NOT NULL,`catTask` varchar(255) DEFAULT NULL,`catDescription` varchar(255) NOT NULL,`catCreate` timestamp NOT NULL DEFAULT current_timestamp(),PRIMARY KEY (`catSystem`, `catTask`, `catDescription`),index `catCreate` (`catSystem`, `catCreate`)) ENGINE=InnoDB DEFAULT CHARSET=utf8;
Query OK, 0 rows affected (0.113 sec)

MariaDB [x]> show create table cache_tasks;
| cache_tasks | CREATE TABLE `cache_tasks` (
  `catSystem` varchar(255) NOT NULL,
  `catTask` varchar(255) NOT NULL,
  `catDescription` varchar(255) NOT NULL,
  `catCreate` timestamp NOT NULL DEFAULT current_timestamp(),
  PRIMARY KEY (`catSystem`,`catTask`,`catDescription`),
  KEY `catCreate` (`catSystem`,`catCreate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 |

Code:
MariaDB [x]> status
--------------
mysql  Ver 15.1 Distrib 10.5.15-MariaDB, for debian-linux-gnu (x86_64) using  EditLine wrapper

Connection id:          564
Current database:       x
Current user:           root@localhost
SSL:                    Not in use
Current pager:          stdout
Using outfile:          ''
Using delimiter:        ;
Server:                 MariaDB
Server version:         10.5.15-MariaDB-0+deb11u1 Debian 11
Protocol version:       10
Connection:             Localhost via UNIX socket
Server characterset:    utf8mb4
Db     characterset:    utf8mb4
Client characterset:    utf8
Conn.  characterset:    utf8
UNIX socket:            /run/mysqld/mysqld.sock
Uptime:                 6 days 6 hours 35 min 34 sec

Threads: 1  Questions: 44543  Slow queries: 0  Opens: 98  Open tables: 76  Queries per second avg: 0.082
--------------
 
Werbung:
Oben