dbDelta installiert keine database

Ich bin mir nicht sicher, warum das nicht läuft. Wenn ich dbDelta ausgabe, heißt es, dass es die Tabelle erstellt hat, aber nicht.

Ich denke mein SQL ist gültig. Alles, was zwischen ID und UNIQUE KEY herauskommt, führt dazu, dass die Tabelle erstellt wird, aber ich sehe das Problem mit den anderen Zeilen nicht.

Vielen Dank

function email_install () { global $wpdb; $table_name = $wpdb->prefix . "table_name_email"; $charset_collate = $wpdb->get_charset_collate(); $sql = "CREATE TABLE " . $table_name . " ( id INT NOT NULL AUTO_INCREMENT, time DATETIME DEFAULT CURRENT_TIMESTAMP NOT NULL, email VARCHAR NOT NULL, page VARCHAR NOT NULL, UNIQUE KEY (id) ) ". $charset_collate . ";"; require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); dbDelta( $sql ); } 

Solutions Collecting From Web of "dbDelta installiert keine database"

In der SQL-Abfrage ist ein Fehler aufgetreten. Sie haben Zeit als Datums- und Standardwert definiert, die in current_timestamp erwähnt werden. Zeit als Zeitstempel definieren Geben Sie auch die Länge der E-Mail- und Seitenfelder an.

Korrigierte Abfrage:

 $sql = "CREATE TABLE " . $table_name . " ( id INT NOT NULL AUTO_INCREMENT, time TIMESTAMP DEFAULT CURRENT_TIMESTAMP NOT NULL, //Change datetime to timestamp email VARCHAR(50) NOT NULL, //Change length page VARCHAR(50) NOT NULL, //Change length UNIQUE KEY (id) ) ". $charset_collate . ";";