|
Vorheriges Thema: Nächstes Thema: |
Autor |
Nachricht |
automatix
Anmeldungsdatum: 18.03.2010 Beiträge: 2
|
Verfasst am: 18.03.2010 00:10:21 Titel: TIMESTAMP + NOT NULL = DEFAULT Value CURRENT_TIMESTAMP ??? |
|
|
Hallo!
Es gibt eine Tybelle "test" mit einer TIMESTAMP-Spalte "datetimecreated", deren Werte nicht NULL sein dürfen:
Code: |
CREATE TABLE IF NOT EXISTS `test` (
`id` INT NOT NULL AUTO_INCREMENT ,
`label` VARCHAR(100) NULL ,
`description` VARCHAR(1000) NULL ,
`datetimecreated` TIMESTAMP NOT NULL ,
`datetimelastupdate` TIMESTAMP NULL ,
`datetimedeleted` TIMESTAMP NULL ,
`status` VARCHAR(10) NOT NULL ,
`numupdates` INT NOT NULL DEFAULT 0 ,
PRIMARY KEY (`id`) )
ENGINE = MyISAM; |
Wider Erwarten macht MySQL aus dem Code oben keine NOT-NULL-Spalte, sondern eine NULL-Spalte mit einem DEFAULT-Wert "CURRENT_TIMESTAMP":
Code: |
mysql> DESC test;
+--------------------+---------------+------+-----+-------------------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+---------------+------+-----+-------------------+----------------+
| id | int(11) | NO | PRI | NULL | auto_increment |
| label | varchar(100) | YES | | NULL | |
| description | varchar(1000) | YES | | NULL | |
| datetimecreated | timestamp | YES | | CURRENT_TIMESTAMP | |
| datetimelastupdate | timestamp | YES | | NULL | |
| datetimedeleted | timestamp | YES | | NULL | |
| status | varchar(10) | NO | | NULL | |
| numupdates | int(11) | NO | | 0 | |
+--------------------+---------------+------+-----+-------------------+----------------+ |
Hat jemand eine Idee, warum das DBMS das macht? Und wie kann man eine TIMESTAMP-Spalte auf NOT NULL setzen, und zwar ohne Default-Wert?
Danke |
|
Nach oben |
|
|
nsche
Anmeldungsdatum: 14.04.2010 Beiträge: 1
|
Verfasst am: 14.04.2010 16:41:26 Titel: |
|
|
hallo automatix,
schon seltsam, was du herausgefunden hast. Bei mir passiert das gleiche.
phpMyAdmin weist die Spalte allerdings als NOT NULL aus, jedoch mit einem Defaulteintrag CURRENT_TIMESTAMP
nsche |
|
Nach oben |
|
|
automatix
Anmeldungsdatum: 18.03.2010 Beiträge: 2
|
Verfasst am: 14.04.2010 17:14:15 Titel: |
|
|
nsche hat folgendes geschrieben: |
hallo automatix,
schon seltsam, was du herausgefunden hast. Bei mir passiert das gleiche.
phpMyAdmin weist die Spalte allerdings als NOT NULL aus, jedoch mit einem Defaulteintrag CURRENT_TIMESTAMP
nsche |
Hallo!
Ja, ich weiß, phpMyAdmin verhält sich an dieser Stelle etwas seltsam. Versuch es lieber über die Konsole, mit DESC meinetabelle, dann siehst Du, was ich meine. |
|
Nach oben |
|
|
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
|
|
|