SQLinfo.ru - Все о MySQL Webew.ru: теория и практика веб-технологий

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

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

Вы не зашли.

#1 23.09.2010 17:08:06

Hershy
Участник
Зарегистрирован: 23.09.2010
Сообщений: 2

Триггеры и сайт

Добрый день, может вы поможите

Суть проблемы в том:
1. Есть сайт, на сайте каждый пользователь заходит под своим паролем и логином, которые указаны в таблице user. Ну или не заходит, тогда находится в статусе гостя
2. Пользователи в любом статусе могут создавать коментарии в базе

Нужно создать триггер, который бы указывал, например в таблице change, в поле user_id, идентификатор того пользователя, который написал коментарий

Сколько не пробовал user() в Mysql выдает только root@... и т.д., в зависимости как сайт коннектится в базу, а вот как передать в триггер id пользователя, создающего запись, никак не могу постичь.

Думал через таблицу еще одну, где будут записи текущих зарегистрированных пользователей, или через таблицу сессий в базе сайта, да опять проблема. Ведь если несколько пользователей одновременно залогинились, какого в id пользователя писать.
Думал через сохраненную процедуру, которая будет вызываться в триггере, да получается, что в триггер параметр нужно передавать, а это вроде делать нельзя

Блин, чуйствую, что вообще никак этого сделать нельзя.

Помогите хоть кто-нибудь, или скажите что точно нельзя сделать или пните в нужном направлении
Спасибо заранее!

Неактивен

 

#2 23.09.2010 20:33:54

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

Re: Триггеры и сайт

Через триггер нельзя. Вот только зачем вам в данном случае триггер??
Пишите сразу через процедуру.

Неактивен

 

#3 24.09.2010 08:23:59

Hershy
Участник
Зарегистрирован: 23.09.2010
Сообщений: 2

Re: Триггеры и сайт

Спасибо за быстрый ответ!

Хорошо, тогда не могли бы вы подсказать, что за процедура должна запускаться автоматически при создании, изменении, удалении записи в таблицах базы, если точек входа для этого (т.е. количество файлов php и в самом коде каждого такого файла) узнать не представляется возможным, т.е. мест запуска процедуры-удаленки.
Если подскажите как, буду очень благодарен

Неактивен

 

#4 26.09.2010 19:35:35

paulus
Администратор
MySQL Authorized Developer and DBA
Зарегистрирован: 22.01.2007
Сообщений: 6757

Re: Триггеры и сайт

Проще всего написать процедуру, а права на непосредственное изменение
данных отобрать. Тогда все точки входа, которые не используют процедуру,
начнут отваливаться с ошибкой.

Неактивен

 

Board footer

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