Задавайте вопросы, мы ответим
Вы не зашли.
Доброе время суток
Есть таблица (см. внизу)
Код:
id date year_month
1 2016-08-25 201608
При вставки записи (с приложения/клиента), я заполняю поле «date».
Вопрос:
Существует возможность атоматом (на стороне сервера) как-нибудь заполнить поле «year_month» (тип INT), после заполнения «date»? если в этом поле должно отображаться «месяц» и «год» (взятой с поля "date"), если триггером этого сделать не выйдет.
Или всетаки это должен делать клиент.
Заранее спасибо
P.S.
Я знаю... еще есть функции "year" и "month" (для разбивки на год и месяц). Мне нужно поле «year_month», для вывода на страничку "Архива" данных, где отображается только "год" и "месяц", и потом легче делать выборку (для показа), данных за месяц, т.е. соответствующую ссылку делать на страничке
KBO вне форума
Отредактированно Konstantin78 (25.08.2016 23:26:02)
Неактивен
А почему триггером не выйдет? Именно он здесь и нужен.
Неактивен
vasya написал:
А почему триггером не выйдет? Именно он здесь и нужен.
Ну потому что, при срабатывании триггера на встаку "AFTER INSERT", после того как я добавил новую запись, выдает ошибку:
«#1442 - Can't update table 'operator' in stored function/trigger because it is already used by statement which invoked this stored function/trigger»
Триггер после записи обычно нужен для изменения каких-то данных в ДРУГИХ таблицах, но НЕ в текущей
Неактивен
before insert ?
Неактивен
vasya написал:
before insert ?
Мне казалось, что нужно получить сначало "date", чтоб потом выставить "year_month", или нет?
Неактивен
Konstantin78 написал:
vasya написал:
before insert ?
Мне казалось, что нужно получить сначало "date", чтоб потом выставить "year_month", или нет?
Помогло обычное "view" (созданное с тем полем, которое мне нужно).
Неактивен
Konstantin78 написал:
Мне казалось, что нужно получить сначало "date", чтоб потом выставить "year_month", или нет?
Нет.
..
new.year_month = concat(year(new.`date`),month(new.`date`));
..
Неактивен