Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Оператор CURDATE() не работает (Barkas) 01/11/2008 - 01:58:22
      Re: Оператор CURDATE() не работает (bac) 01/11/2008 - 07:41:32



From: Barkas - 01/11/2008 - 01:58:22
Subject:Оператор CURDATE() не работает
-----------------
Всем здрасте, кто читает в данный моммент мое сообщение. Суть проблемы в следующем. Создаю таблицу в MySQL:
CREATE TABLE Transactions
-> (
-> TransID INT NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> OrderID INT NOT NULL,
-> DVDID SMALLINT NOT NULL,
-> DATEOut DATE NOT NULL,
-> DATEDue DATE NOT NULL,
-> DATEIn DATE NOT NULL,
-> FOREIGN KEY (OrderID) REFERENCES Orders (OrderID),
-> FOREIGN KEY (DVDID) REFERENCES DVDs (DVDID)
-> )
-> ENGINE=INNODB;

Потом пытаюсь заполнить таблицу:

INSERT INTO Transactions (OrderID, DVDID, DateOut, DateDue)
-> VALUES (1, 1, CURDATE(), CURDATE()+3),
-> (1, 4, CURDATE(), CURDATE()+3),
-> (1, 8, CURDATE(), CURDATE()+3),
-> (2, 3, CURDATE(), CURDATE()+3),
-> (3, 4, CURDATE(), CURDATE()+3),
-> (3, 1, CURDATE(), CURDATE()+3),
-> (3, 7, CURDATE(), CURDATE()+3),
-> (4, 4, CURDATE(), CURDATE()+3),
-> (5, 3, CURDATE(), CURDATE()+3),
-> (6, 2, CURDATE(), CURDATE()+3),
-> (6, 1, CURDATE(), CURDATE()+3),
-> (7, 4, CURDATE(), CURDATE()+3),
-> (8, 2, CURDATE(), CURDATE()+3),
-> (8, 1, CURDATE(), CURDATE()+3),
-> (8, 3, CURDATE(), CURDATE()+3),
-> (9, 7, CURDATE(), CURDATE()+3),
-> (9, 1, CURDATE(), CURDATE()+3),
-> (10, 5, CURDATE(), CURDATE()+3),
-> (11, 6, CURDATE(), CURDATE()+3),
-> (11, 2, CURDATE(), CURDATE()+3),
-> (11, 8, CURDATE(), CURDATE()+3),
-> (12, 5, CURDATE(), CURDATE()+3),
-> (13, 7, CURDATE(), CURDATE()+3);
ERROR 1364 (HY000): Field 'DATEIn' doesn't have a default value

Затем делаю изменения в таблице:

alter table transactions
-> modify datein date;
Query OK, 0 rows affected (0.14 sec)
Records: 0 Duplicates: 0 Warnings: 0

Затем снова пытаюсь ввести данные:

INSERT INTO Transactions (OrderID, DVDID, DateOut, DateDue)
-> VALUES (1, 1, CURDATE(), CURDATE()+3);
ERROR 1292 (22007): Incorrect date value: '20081032' for column 'DATEDue' at row 1

Как видите ничего не выходит. Почему не работает оператор CURDATE()+3, то есть при изменении текущей даты 10 месяц не меняется на 11? Что за глюк такой? Использую версию MySQL 5.0. Если кто нить что нить знает, отпишите пожалуйста, заранее спасибо.





[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
34407



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |