ошибка в вашем синтаксисе SQL («не ноль» при установке)

Я попытался настроить базу данных mysql с помощью PHP следующим образом:

$create_table = "CREATE TABLE `anmeldungen`
(
ID INT AUTO_INCREMENT DEFAULT NOT NULL,
PRIMARY KEY(ID),
vorname TEXT DEFAULT NOT NULL,
name TEXT DEFAULT NOT NULL,
ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)";

Но это просто отвечает

You have an error [...] near 'NOT NULL, PRIMARY KEY(ID), vorname TEXT DEFAULT NOT NULL, name TEXT DEFAULT NOT' at line 3

Я не могу найти ошибку, даже без DEFAULT это не работает
Некоторое время назад это работало как-то, но, может быть, я просто слишком на это посмотрел: D

Надеюсь, вы можете помочь мне, как начинающий.

Спасибо!

1

Решение

Вопрос из-за DEFAULT иметь NULL а также CURRENT_TIMESTAMP только вариант. Пожалуйста, проверьте ниже. NOT NULL не в DEFAULT варианты выпадающего

$create_table = "CREATE TABLE `anmeldungen`
(
ID INT AUTO_INCREMENT NOT NULL,
PRIMARY KEY(ID),
vorname TEXT NOT NULL,
name TEXT NOT NULL,
ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP
)"

Выполненный код в phpmyadmin

0

Другие решения

$create_table = "CREATE TABLE `anmeldungen`
(
ID INT AUTO_INCREMENT DEFAULT NOT NULL,
vorname TEXT DEFAULT NOT NULL,
name TEXT DEFAULT NOT NULL,
ts TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(ID) -- comes last after all columns definitions
)";
1

Я почти уверен, что ваше объявление первичного ключа должно идти после определений столбцов.

$create_table = "CREATE TABLE `anmeldungen`
(
`ID`      INT       AUTO_INCREMENT DEFAULT NOT NULL,
`vorname` TEXT      DEFAULT NOT NULL,
`name`    TEXT      DEFAULT NOT NULL,
`ts`      TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY(ID)
)";
0
По вопросам рекламы [email protected]