|
|
|
| Есть таблица вида
id name price2
price2 - int
так вот, не могу отловить причину, каким-то непонятным образом обновляемые числа для price становятся равными 0 - уже не знаю на что думать, но то все нормально, то обновляют цены и они все нолями становятся. с чем это может быть связано ?
сам знаю что звучит странно и дико - но мало ли, может не учел чего | |
|
|
|
|
|
|
|
для: Richard Ferlow
(07.04.2011 в 10:14)
| | Базу вы полностью разрабатывали? Не может где-то триггера висеть?
PS Найдите все UPDATE-запросы и записывайте время их в файл вместе с временем выполнения, возможно это поможет локализовать причину. | |
|
|
|
|
|
|
|
для: cheops
(07.04.2011 в 10:19)
| | Сам делал, о триггерами никогда не пользовался.
Хорошая идея, попробую лог запросов сделать. | |
|
|
|
|
|
|
|
для: cheops
(07.04.2011 в 10:19)
| | Таблицу где хранятся эти значения скрипт "трогает" всего в одном единственном месте. Поставил там запись в лог - никто нулевые значения не вписывает. Более того, переделал так, что число это формируется автоматически и многократные проверки подтвердили что значение 0 оно принимать теперь не может.
Т.е. получается что в какой-то момент даже когда никто ничего не трогает, значения сбрасываются. причем как-то выборочно. Ума не приложу что это может быть=( | |
|
|
|
|
|
|
|
для: Richard Ferlow
(08.04.2011 в 09:37)
| | По cron ничего не выполняется? | |
|
|
|
|
|
|
|
для: cheops
(08.04.2011 в 11:02)
| | Нет.Поле price2 новое - нигде ранее не использовалось, другие поля в этом же таблице такой "болезнью" не страдают.
Вот структура таблица, может быть наведет на какие-то мысли
CREATE TABLE IF NOT EXISTS `cms_turs` (
`categoryid` int(3) NOT NULL auto_increment,
`parentid` int(3) NOT NULL default '0',
`displayorder` int(3) NOT NULL default '0',
`name` varchar(128) NOT NULL,
`price` varchar(128) NOT NULL,
`inform` text NOT NULL,
`dates` text NOT NULL,
`hotels` text NOT NULL,
`vklucheno` text NOT NULL,
`dopolnitelno` text NOT NULL,
`filename` varchar(64) NOT NULL,
`filename2` varchar(64) NOT NULL,
`description` text NOT NULL,
`type` int(2) NOT NULL,
`program` tinyint(2) NOT NULL,
`endtime` int(11) NOT NULL,
`country` int(11) NOT NULL,
`curort` int(11) NOT NULL,
`city` int(11) NOT NULL,
`operator` int(11) NOT NULL,
`updated` int(11) NOT NULL,
`datefrom` int(11) NOT NULL,
`dateto` int(11) NOT NULL,
`datelong` int(11) NOT NULL,
`price2` int(11) NOT NULL,
PRIMARY KEY (`categoryid`),
KEY `parentid` (`parentid`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1311 ;
|
| |
|
|
|
|
|
|
|
для: Richard Ferlow
(08.04.2011 в 12:02)
| | А как это поле заполняется? | |
|
|
|
|
|
|
|
для: cheops
(08.04.2011 в 13:01)
| | Раньше из текстового поля заполнялось - проблема эта была
Сейчас в hotels хранится массив данных объеденнынех через implode - перед тем как туда вставить в массиве этом минимальная цена ищется и подставляется.
Загвоздка причем в том, что цена сбрасывается не у каких-то случайных, а у сразы многих в пределах одного parentid | |
|
|
|
|
|
|
|
для: Richard Ferlow
(08.04.2011 в 13:21)
| | Удалил поле price2, создал такое же pricenew - сбрасываться перестало. | |
|
|
|