SQLinfo.ru - Все о MySQL

Форум пользователей MySQL

Задавайте вопросы, мы ответим

Вы не зашли.

#1 24.05.2012 15:25:32

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Возможности "Information schema"

Везде информация по таблицам и работе с базой "Information schema" кусочна и разрознена. А для отслеживания изменений в прочих базах (насколько я понял) это лучший метод. Где бы взять возможно полную (лучше справочную) информацию о том что же хранят таблицы "Information schema". Заранее Спасибо.

Неактивен

 

#2 24.05.2012 15:34:13

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Возможности "Information schema"

Думаю, что лучше всего это описано в документации: http://dev.mysql.com/doc/refman/5.5/en/ … chema.html

Если нет какой-то конкретной информации, то можно сообщать о баге документации на bugs.mysql.com

Неактивен

 

#3 24.05.2012 22:42:33

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Re: Возможности "Information schema"

Да конечно это интересная информация жаль только не на русском.
Положим я нашел достаточно простой способ находить добавленные стоки в таблицах.
А существует ли способ (простой) отслеживать изменения в таблицах без изменения количества  записей,
например :
UPDATE staff SET works_since = "2000-04-26" WHERE name = "Jack";

???

Неактивен

 

#4 24.05.2012 23:43:31

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Возможности "Information schema"

Наверное это имеет смысл делать триггером ON UPDATE

Неактивен

 

#5 25.05.2012 23:00:07

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Re: Возможности "Information schema"

Что только не пробовал не удаётся установить тригер.
пробую так:
CREATE TRIGGER add_str1 AFTER
INSERT ORDER 1
ON ALTAIR_DB.cs_name
FOR EACH ROW
BEGIN
INSERT INTO ALTAIR_DB.events (m_tabl) VALUES ('cs_name');
INSERT INTO ALTAIR_DB.events (kod) VALUES (cs_name.Kod);
INSERT INTO ALTAIR_DB.events (name) VALUES (cs_name.Name);
END

в ответ даёт:
Ошибка

SQL-запрос:

CREATE TRIGGER add_str1 AFTER INSERT ORDER 1 ON ALTAIR_DB.cs_name
FOR EACH
ROW
BEGIN
INSERT INTO ALTAIR_DB.events(
m_tabl
)
VALUES (
'cs_name'
);

Ответ MySQL: Документация
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER 1
ON ALTAIR_DB.cs_name
FOR EACH ROW
BEGIN
INSERT INTO ALTAIR_DB.event' at line 2 

хочу обратить внимание что TRIGGER и EACH в ответе MySQL не выделены как команды (жирным).
Подумал версия не та MySQL 5.0.51b. Установил MySQL -5.5.23. Практически ничего не поменялось.

Отредактированно eav1962 (25.05.2012 23:02:31)

Неактивен

 

#6 26.05.2012 00:08:11

rgbeast
Администратор
MySQL Authorized Developer and DBA
Откуда: Москва
Зарегистрирован: 21.01.2007
Сообщений: 3880

Re: Возможности "Information schema"

Выделение это не к MySQL, а к клиенту, который используете (PMA?)
Ошибка указывает на "ORDER 1" - в MySQL это недопустимый синтаксис, см. http://dev.mysql.com/doc/refman/5.5/en/ … igger.html

Неактивен

 

#7 28.05.2012 11:26:39

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Re: Возможности "Information schema"

"ORDER 1" я убирал он просто давал другие ошибки. Но всё равно спасибо огромное ваша ссылка помогла.
К сожалению в описаниях не проставляются акценты. Я например попался на том что не ставил операторы "delimiter"  при работе в phpMyAdmin, НАДО ТАК :
delimiter |

CREATE TRIGGER add_str1 BEFORE INSERT ON cs_name
  FOR EACH ROW BEGIN
    INSERT INTO events SET kod = NEW.Kod;
   
  END;
|

delimiter ;

Неактивен

 

#8 31.05.2012 11:39:27

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Re: Возможности "Information schema"

Подскажите пожалуйста как посмотреть какие тригеры уже установленны (чтоб удалить лишние)

Неактивен

 

#9 31.05.2012 14:30:14

vasya
Архат
MySQL Authorized Developer
Откуда: Орел
Зарегистрирован: 07.03.2007
Сообщений: 5842

Re: Возможности "Information schema"

SELECT * FROM information_schema.TRIGGERS;

Неактивен

 

#10 05.06.2012 12:17:52

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Re: Возможности "Information schema"

Всё о чём мы говорили касается отслеживания изменений в таблицах. А можно ли отслеживать запросы (каким то образом) типа Select ... , т.е. знать об обращениях к базе, даже если она не менялась?

Отредактированно eav1962 (05.06.2012 12:18:32)

Неактивен

 

#11 05.06.2012 12:20:58

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Возможности "Information schema"

Ну да, если логирование запросов в my.cnf включить.


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

#12 05.06.2012 21:03:24

eav1962
Участник
Зарегистрирован: 24.05.2012
Сообщений: 7

Re: Возможности "Information schema"

а подробнее? или где почитать?

Неактивен

 

#13 05.06.2012 21:07:45

deadka
Администратор
Зарегистрирован: 14.11.2007
Сообщений: 2422

Re: Возможности "Information schema"


Зеленый свет для слабаков, долги отдают только трусы, тру гики работают только в консоли...

Неактивен

 

Board footer

Работает на PunBB
© Copyright 2002–2008 Rickard Andersson