Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / MySQL [игнор отключен] [закрыт для гостей] / insert ignore on duplicate key update / 1 сообщений из 1, страница 1 из 1
22.06.2017, 18:01
    #39476377
alexnews
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
insert ignore on duplicate key update
Уважаемые знатоки,

5.6.27-0ubuntu0.14.04.1

Цель: Создать таблицу отслеживания изменения данных в заданной базе;

CREATE TABLE `site_init_tables` (
`site_init_tables_id` int(11) NOT NULL AUTO_INCREMENT,
`site_table_name` varchar(32) CHARACTER SET utf8 NOT NULL DEFAULT '',
`site_table_rows` int(11) DEFAULT '0',
`site_table_rows_dif` int(11) DEFAULT '0',
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
`updated_at` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
PRIMARY KEY (`site_init_tables_id`),
UNIQUE KEY `site_init_tables_table_name` (`site_table_name`)
) ENGINE=InnoDB AUTO_INCREMENT=1032 DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;

Вношу изменения одним запросом:

Код: sql
1.
2.
3.
4.
INSERT IGNORE INTO site_init_tables (site_table_name,site_table_rows)
SELECT TABLE_NAME,AUTO_INCREMENT-1 
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='production';



далее ежедневно пытаюсь делать:

Код: sql
1.
2.
3.
4.
5.
INSERT IGNORE INTO site_init_tables (site_table_name,site_table_rows)
SELECT TABLE_NAME,AUTO_INCREMENT-1 
FROM information_schema.TABLES
WHERE TABLE_SCHEMA='production'
ON DUPLICATE KEY UPDATE site_table_rows=TABLE_ROWS, site_table_rows_dif = (site_table_rows - AUTO_INCREMENT);



дабы получать разницу в колонке site_table_rows_dif для сохранения в истории.

Вроде бы просто, однако знак - (минус) не работает, когда делаю тоже самое со знаком + (плюс) или * (умножить) работает.

Подскажите, пожалуйста, в чем проблема?
Заранее спасибо.
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / insert ignore on duplicate key update / 1 сообщений из 1, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]