Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Обсуждение возникших проблем, предложений и ошибок MyDAC компонентов
Закрыто
mdsf
Сообщения: 36
Зарегистрирован: Сб 26 янв 2013 06:34

Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение mdsf » Пн 16 сен 2013 12:54

Windows 7 SP1 RU (x86) + Delphi XE2 16.0.4504.48759 + MySQL 5.5.32 + DevArt MyDAC 7.6.11 + база данных InnoDB (utf8_general_ci).

Если напрямую обращаться к основной таблице - ошибок никаких нет.
Если же создать View:

Код: Выделить всё

CREATE TABLE IF NOT EXISTS `myview` (
`id` int(11)
,`number` int(11)
,`uploadstamp` datetime
,`author` varchar(25)
,`updatestamp` datetime
);

...

DROP TABLE IF EXISTS `myview`;
CREATE ALGORITHM=UNDEFINED DEFINER=`root`@`localhost` SQL SECURITY DEFINER VIEW `myview` AS SELECT
`a`.`id` AS `id`,
`a`.`number` AS `number`,
`a`.`uploadstamp` AS `uploadstamp`,
`a`.`author` AS `author`,
`a`.`updatestamp` AS `updatestamp`
FROM maintable;
... и попробовать к нему обратиться, то в ответ придёт ошибка "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)":
Изображение


В соседнем форуме нашёл такого же пострадавшего, но ему, к сожалению, тоже ничем не помогли.

Как быть?

mdsf
Сообщения: 36
Зарегистрирован: Сб 26 янв 2013 06:34

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение mdsf » Вт 17 сен 2013 04:55

И да - это как-то связано с "UseUnicode := True" (+ "Charset"). Создал новый чистый проект, и переключил данную опцию в TMyConnection на "False" - ошибка ушла, но вместе с ними ушло и корректное отображение кириллических данных :(

mdsf
Сообщения: 36
Зарегистрирован: Сб 26 янв 2013 06:34

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение mdsf » Вт 17 сен 2013 09:34

Попробовал продукт Вашего конкурента - он работает как надо. Выходит, MyDAC как-то некорректно работает. Вы можете это поправить?

DemetrionQ
Devart Team
Сообщения: 51
Зарегистрирован: Пн 28 янв 2013 11:54

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение DemetrionQ » Вт 17 сен 2013 13:19

Здравствуйте.

Проблема с открытием таблиц, содержащих TIMESTAMP поля, уже исправлена. Исправление будет доступно в следующей версии MyDAC, которую мы планируем выпустить на этой неделе.

mdsf
Сообщения: 36
Зарегистрирован: Сб 26 янв 2013 06:34

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение mdsf » Вт 17 сен 2013 14:08

Благодарю за скорый ответ. А Вы можете в порядке исключения сказать мне, что конкретно нужно исправить в том файле, который упоминается в заголовке ошибки (только, пожалуйста, не сочтите мою просьбу за наглость и хамство)? Просто у меня проект горит и каждая минута на счету. Исходники компонента на руках. Спасибо заранее.

DemetrionQ
Devart Team
Сообщения: 51
Зарегистрирован: Пн 28 янв 2013 11:54

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение DemetrionQ » Вт 17 сен 2013 16:09

Сообщите мне ваш email и я вышлю вам письмо с описанием необходимых изменений.

mdsf
Сообщения: 36
Зарегистрирован: Сб 26 янв 2013 06:34

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение mdsf » Ср 18 сен 2013 03:29

[email protected]


Спасибо Вам огромное за Вашу помощь!

DemetrionQ
Devart Team
Сообщения: 51
Зарегистрирован: Пн 28 янв 2013 11:54

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение DemetrionQ » Ср 18 сен 2013 14:03

Я отправил вам письмо с описанием фикса.

mdsf
Сообщения: 36
Зарегистрирован: Сб 26 янв 2013 06:34

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение mdsf » Ср 18 сен 2013 14:34

Спасибо! Прошло полчаса, но этот проклятый mail.ru до сих пор молчит как партизан, чтоб у них там всё... :oops:


Если Вас не затруднит, можно Вас попросить переотправить Ваше сообщение на gmail.com: [email protected]

Спасибо большое за отзывчивость!

DemetrionQ
Devart Team
Сообщения: 51
Зарегистрирован: Пн 28 янв 2013 11:54

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение DemetrionQ » Чт 19 сен 2013 10:34

Отправил письмо и на gmail. Сообщите, если снова возникнут проблемы с доставкой письма.

Anfet
Сообщения: 1
Зарегистрирован: Вт 01 окт 2013 14:41

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение Anfet » Вт 01 окт 2013 14:43

Эта ошибка проявляется всегда если использовать поля тип TIMESTAMP и UseUnicode опцию.

Чтобы ее убрать нужно переставить все поля с TIMESTAMP на DATETIME и прописать триггеры если нужна автоподстановка.

А можно и мне фикс?

AndreyZ
Devart Team
Сообщения: 328
Зарегистрирован: Чт 08 сен 2011 13:18

Re: Ошибка: "Invalid FIELD_TYPE_TIMESTAMP Field.Length (57)"

Сообщение AndreyZ » Вт 01 окт 2013 15:08

Данная проблема исправлена в MyDAC версии 8.1.3. Для решения проблемы Вам следует обновить MyDAC до версии 8.1.3 или выше.

Закрыто