SORU
6 Kasım 2008, PERŞEMBE


Her ikisi de Yaratılmış olması ve Güncellenen Geçen zaman damgası sütunları MySQL 4.0

Aşağıdaki tablo şema var

CREATE TABLE `db1`.`sms_queue` (
  `Id` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
  `Message` VARCHAR(160) NOT NULL DEFAULT 'Unknown Message Error',
  `CurrentState` VARCHAR(10) NOT NULL DEFAULT 'None',
  `Phone` VARCHAR(14) DEFAULT NULL,
  `Created` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `LastUpdated` TIMESTAMP NOT NULL ON UPDATE CURRENT_TIMESTAMP,
  `TriesLeft` tinyint NOT NULL DEFAULT 3,
  PRIMARY KEY (`Id`)
)
ENGINE = InnoDB;

Aşağıdaki hata ile başarısız:

ERROR 1293 (HY000): Incorrect table definition; there can be only one TIMESTAMP column with CURRENT_TIMESTAMP in DEFAULT or ON UPDATE clause.

Benim sorum, bu alanların her ikisi de alabilir miyim? veya el ile her bir işlem sırasında LastUpdated bir alan var mı?

CEVAP
6 Kasım 2008, PERŞEMBE


From the MySQL 5.5 documentation:

Bir tabloda bir zaman DAMGASI sütun sütun, otomatik güncelleme değeri, ya da her ikisi olarak başlatma için varsayılan değer olarak geçerli zaman damgası olabilir.Olası geçerli bir zaman damgası sütun için varsayılan değer olarak, ve otomatik güncelleme başka bir sütun için bir değer değildir.

Changes in MySQL 5.6.5:

Daha önce masa başına en fazla bir zaman DAMGASI sütun otomatik olarak başlatılır veya geçerli tarih ve saat için güncellenmiş olabilir.Bu kısıtlama kaldırılmıştır.Herhangi bir zaman DAMGASI sütun tanımı CURRENT_TIMESTAMP VARSAYILAN herhangi bir kombinasyonu ve CURRENT_TIMESTAMP maddeleri güncelleyebilir. Buna ek olarak, bu maddeler artık DATETİME sütun tanımları kullanılabilir. Daha fazla bilgi için, Otomatik Başlatma ve Zaman DAMGASI ve DATETİME için Güncelleme.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Digital Bounds

    Digital Boun

    19 Temmuz 2013
  • rtisticsdev

    rtisticsdev

    31 Mayıs 2012
  • sghaff1

    sghaff1

    23 Mart 2009